Excel rozložení tabulky
Napsal: 29 črc 2021 22:27
od dikobraz
Ahoj, měl bych na vás zkušenější dotaz. V příloze je ukázka tabulky, se kterou pravidelně pracuji, ale vstupní rozložení je špatné a zatím se mi nedaří přijít na způsob, jak to snadno upravit do potřebného tvaru, který je na druhém listu v souboru.
Napadlo by někoho nějaké efektivní řešení?
Moc děkuji všem za pomoc.
Re: Excel rozložení tabulky
Napsal: 30 črc 2021 18:46
od elninoslov
Môže byť makro?
Kód: Vybrat vše
Sub prevod_dat()
Dim D(), V(), R As Long, Poz As Long, rngBold As Range, rngItalic As Range
D = Worksheets("takhle to dostanu").UsedRange.Value
ReDim V(1 To UBound(D, 1), 1 To 5)
With Worksheets("makro")
For R = 1 To UBound(D, 1)
If IsEmpty(D(R, 4)) Then
Poz = R
Else
If Not IsEmpty(D(R, 1)) Then
V(R, 1) = D(Poz, 1)
V(R, 2) = D(R, 1)
If rngBold Is Nothing Then Set rngBold = .Cells(R, 1) Else Set rngBold = Union(rngBold, .Cells(R, 1))
Else
Set rngBold = Union(rngBold, .Cells(R, 5))
If rngItalic Is Nothing Then Set rngItalic = .Cells(R, 5) Else Set rngItalic = Union(rngItalic, .Cells(R, 5))
End If
V(R, 5) = D(R, 4)
End If
Next R
.UsedRange.Clear
.Cells(1, 1).Resize(UBound(V, 1), 5).Value = V
rngBold.Font.Bold = True
rngItalic.Font.Italic = True
With .Cells(1, 1).Resize(UBound(V, 1), 5)
.Font.Name = "Verdana"
.Font.Size = 8
.Columns(5).NumberFormat = "#,##0.00"
End With
End With
End Sub
Edit:Prípadne aj PQ dotaz v prílohe.