Hallo liebe Forengemeinde,
ich bin gerade dabei einen VBA-Code zu schreiben und komme nicht weiter.
Folgender Datenaufbau ist gegen:
Sheet Main: Spalte A -> Produktnamen
Sheet Data: Spalte A -> Gruppennamen und in den jeweiligen Zeilen die zugehörigen Produkte (jede Zeile ist also verschieden lang)
Ich habe bisher diesen Code geschrieben, aber leider führt er nicht richtig aus was ich vorhabe:
ub GUIFinder()
Dim Underlying As String
Dim GUIBracket As String
Dim ContParts As Long
Dim GUIAnzahl, k, i, z As Long
Dim objSource, objTarget As Worksheet
Set objSource = Sheets("Data")
Set objTarget = Sheets("Main")
GUIAnzahl = Application.WorksheetFunction.CountA(objTarget.Range("A1:A20"))
For i = 1 To GUIAnzahl
ContParts = objSource.Cells(i, Application.Columns.Count).End(xlToLeft).Column
objTarget.Cells(k, 10).Value = objSource.Cells(i, 1).Value
For z = 2 To ContParts
If z = ContParts Then
Else
objTarget.Cells(z - 1, 11).Value = objSource.Cells(1, z).Value
End If
Next z
z = z + 1
k = k + ContParts + 1
Next i
End Sub
Ich möchte also dass der Code hergeht und im Quellsheet die ersten Produktkategorie (bspw. DAX, Zelle A1) in das Zielsheet in Zelle J1 schreibt und anschließend die zugehörigen Aktien (eingepflegt im Quellsheet) neben DAX in Spalte K ins Zielsheet schreibt.
Anschließend soll er weitermachen mit MDAX (Zelle B1 im Quellsheet), die zugehörigen Aktien (Range B2:B30 im Quellsheet) in das Zielsheet in Spalte K schreiben etc. etc.
Ich hoffe ich habe es geschafft halbwegs verständlich auszudrücken
P.S. wieso formatiert der Beitragseditor die VB Codes ohne Zeilenumbrüche? Manchmal ist alles schon mit Absätze formatiert, oftmals aber nicht?!
ich bin gerade dabei einen VBA-Code zu schreiben und komme nicht weiter.
Folgender Datenaufbau ist gegen:
Sheet Main: Spalte A -> Produktnamen
Sheet Data: Spalte A -> Gruppennamen und in den jeweiligen Zeilen die zugehörigen Produkte (jede Zeile ist also verschieden lang)
Ich habe bisher diesen Code geschrieben, aber leider führt er nicht richtig aus was ich vorhabe:
ub GUIFinder()
Dim Underlying As String
Dim GUIBracket As String
Dim ContParts As Long
Dim GUIAnzahl, k, i, z As Long
Dim objSource, objTarget As Worksheet
Set objSource = Sheets("Data")
Set objTarget = Sheets("Main")
GUIAnzahl = Application.WorksheetFunction.CountA(objTarget.Range("A1:A20"))
For i = 1 To GUIAnzahl
ContParts = objSource.Cells(i, Application.Columns.Count).End(xlToLeft).Column
objTarget.Cells(k, 10).Value = objSource.Cells(i, 1).Value
For z = 2 To ContParts
If z = ContParts Then
Else
objTarget.Cells(z - 1, 11).Value = objSource.Cells(1, z).Value
End If
Next z
z = z + 1
k = k + ContParts + 1
Next i
End Sub
Ich möchte also dass der Code hergeht und im Quellsheet die ersten Produktkategorie (bspw. DAX, Zelle A1) in das Zielsheet in Zelle J1 schreibt und anschließend die zugehörigen Aktien (eingepflegt im Quellsheet) neben DAX in Spalte K ins Zielsheet schreibt.
Anschließend soll er weitermachen mit MDAX (Zelle B1 im Quellsheet), die zugehörigen Aktien (Range B2:B30 im Quellsheet) in das Zielsheet in Spalte K schreiben etc. etc.
Ich hoffe ich habe es geschafft halbwegs verständlich auszudrücken
P.S. wieso formatiert der Beitragseditor die VB Codes ohne Zeilenumbrüche? Manchmal ist alles schon mit Absätze formatiert, oftmals aber nicht?!