Supportnet / Forum / Tabellenkalkulation
Spaltenanalyse in einer Matrix
Frage
hallo zusammen,
hab ein kleines problem. ich habe eine ganz normale tabelle mit mehreren Spaten und Zeilen (Matrix). Ist im Prinzip ne Druckerpatronenzuordnung, dh. als Spaltenüberschrift die Druckerpatrone und links in der Zeile die Modelle die dafür passen.
patrone1 patrone2 patrone3
model1 x x
model2 x
model3 x
model4
ziel ist es, dass alle modelle die für patrone1 passen in eine ZELLE zu bekommen d.h. ähnlich wie sverweis und verketten. Ich möchte nachher alle Druckermodelle in einer Zelle haben, die für Patrone 1, 2,3 etc. passt. Any Hints ? Merci
Antwort 1 von Coolpix
hallo alleine,
ich habe nach deinen Angaben eine Tabelle,
von B4-B7 mit den Modellen, und von C3-F3 mit den Patronen.
das Makro liest den Patronentyp in eine Sammelvariable und schreibt dann das/die Druckermodell(e) dazu.
Wenn das Tabellenende erreicht ist wird die Sammelvariable in eine Zelle geschrieben.
p.S. alles was hier wie ein Accent aussieht soll ein Hochkomma sein...
Feedback fänd ich klasse ...
Greetings ;-)
ich habe nach deinen Angaben eine Tabelle,
von B4-B7 mit den Modellen, und von C3-F3 mit den Patronen.
das Makro liest den Patronentyp in eine Sammelvariable und schreibt dann das/die Druckermodell(e) dazu.
Wenn das Tabellenende erreicht ist wird die Sammelvariable in eine Zelle geschrieben.
Sub Auswertung()
Dim Zaehler1 As Long, MaxRow As Long, MaxCol As Integer, Zaehler2 As Integer
Dim VarWert1 As String, VarWert2 As String, VarKombi As String
Dim Zeile As Long
Zeile = 4 ´Starzeile festlegen
MaxRow = ActiveSheet.Cells(Rows.Count, 2).End(xlUp).Row ´letzen gefüllte Zelle in Spalte B finden
Range("C3").Select
MaxCol = Selection.End(xlToRight).Column ´letzen gefüllte Zelle in Zeile 3 finden
For Zaehler2 = 3 To MaxCol
VarWert2 = Cells(3, Zaehler2) ´Patrone einlesen
VarKombi = VarWert2 & ": " ´Patrone in Variable schreiben
For Zaehler1 = 4 To MaxRow ´meine Daten beginnen in Zeile 4
VarWert1 = Cells(Zaehler1, Zaehler2)
If VarWert1 <> "" Then
VarWert2 = Cells(Zaehler1, 2) ´Modell in Variable einlesen
VarKombi = VarKombi & " " & VarWert2 & "," ´Sammel-Variable füllen
End If
Next Zaehler1
´Inhalt der Sammel-Variablen in Zelle schreiben und letztes Komma weglassen
Cells(Zeile, MaxCol + 1) = VBA.Left(VarKombi, VBA.Len(VarKombi) - 1)
´Zeilenzahl fürs nächste Schreiben erhöhen
Zeile = Zeile + 1
Next Zaehler2
End Sub
p.S. alles was hier wie ein Accent aussieht soll ein Hochkomma sein...
Feedback fänd ich klasse ...
Greetings ;-)
Antwort 2 von Nzer_de
suuuppper...das hat geklappt. Hab Dein Script noch ein bisschen angepasst und jetzt läufts. Vielen Dank für die schnelle Hilfe ;-)