ich befasse mich gerade mit folgender Datei, wo bereits die folgende VBA hinterlegt ist.
Datei
https://www.dropbox.com/s/q1ssomc6gk55eys/Mappe4.xlsm?dl=0
VBA
Sub Schaltfläche1_Klicken()
Dim z, a, b, nam(7), zz, i, la, B1, B2, B3, B4
Columns("v:bz").Clear
For z = 2 To 1000
If Cells(z, 2) "" Then
a = Val(Cells(z, 1)): b = Cells(z, 2) 'Titel 1
If a = 4 Then
la = 99
nam(2) = "": nam(3) = ""
For zz = z To 1 Step -1 'Titel 2
la = a
a = Val(Cells(zz, 1)): b = Cells(zz, 2) 'Titel 3
If a > la Then Exit For
If nam(a) = "" Then nam(a) = b
nam(4) = Cells(z, 3) 'Titel 4
B4 = Cells(z, 6) 'Titel 4 Beschreibung
nam(5) = Cells(z, 2) 'Aktiv?
nam(6) = Cells(z, 4) 'Kategorie1
nam(7) = Cells(z, 5) 'Kategorie2
If a = 1 Then Exit For
Next zz
i = i + 1
Cells(i + 1, 22) = nam(1) 'Titel 1
Cells(i + 1, 23) = B1 'Titel 1 Beschreibung
Cells(i + 1, 24) = nam(2) 'Titel 2
Cells(i + 1, 25) = B2 'Titel 2 Beschreibung
Cells(i + 1, 26) = nam(3) 'Titel 3
Cells(i + 1, 27) = B3 'Titel 3 Beschreibung
Cells(i + 1, 28) = nam(4) 'Titel 4
Cells(i + 1, 29) = B4 'Titel 4 Beschreibung
Cells(i + 1, 30) = nam(5) 'Aktiv
Cells(i + 1, 31) = nam(6) 'Kategorie1
Cells(i + 1, 32) = nam(7) 'Kategorie2
End If
End If
Next z
Application.ScreenUpdating = True
Sheets("tabelle5").Range("v1") = "Titel 1"
Sheets("tabelle5").Range("w1") = "Titel 1 Beschreibung"
Sheets("tabelle5").Range("x1") = "Titel 2"
Sheets("tabelle5").Range("y1") = "Titel 2 Beschreibung"
Sheets("tabelle5").Range("z1") = "Titel 3"
Sheets("tabelle5").Range("aa1") = "Titel 3 Beschreibung"
Sheets("tabelle5").Range("ab1") = "Titel 4"
Sheets("tabelle5").Range("ac1") = "Titel 4 Beschreibung"
Sheets("tabelle5").Range("ad1") = "Aktiv"
Sheets("tabelle5").Range("ae1") = "Kategorie1"
Sheets("tabelle5").Range("af1") = "Kategorie2"
End Sub
Mein Ziel ist es die SourceStruktur in hierarchischer Form in eine TargetStruktur in tabellarischer Form umzuwandeln. Die SourceStruktur besteht au 4 Leveln, bei der Level 1-3 jeweils einen Titel und eine Beschreibung haben. Level 4 hat weitere Detail Informationen.
Die TargetStruktur soll die folgenden Spalten erhalten
Titel1 / Titel1Beschreibung / Titel2 / Titel2Beschreibung / Titel3 / Titel3Beschreibung / Titel4 / Titel4Beschreibung / Titel4....Sonstige Spalten....
Die bereits vorhandene VBA setzt dies in Teilen bereits um, jedoch bekomme ich aktuell nur die Level1-3 Titel und nicht noch die zugehörigen Beschreibungen aus. Ideal wäre es wenn der Prozess zudem möglichst performant wäre für größere Datenmenge.
Vielen Dank im Voraus fürs Anschauen &
beste Grüße,
Jack