Ich habe ein Excel-Makro geschrieben, das Namen zwischen zwei Blättern abgleicht und sie in einem Listenfeld anzeigt. Es hat kein Problem, nur Namen zu finden, aber sobald ich versuche, andere Daten von einem der Blätter aufzunehmen, scheint es keine Schleife mehr zu geben.Multicolumn List Box zeigt nicht die Daten, ich will es?
Hier ist mein Code:
Set matchedartistcell = Worksheets("Lots").Cells(curcell.Row, columnofregion)
matching_artist = matchedartistcell.Value
For i = 1 To maxmaster
If Trim(Worksheets("Master").Cells(i, 1)) = Trim(matching_artist) Then
ListBox1.AddItem (Worksheets("Master").Cells(i, 2))
ListBox1.List(0, 1) = Worksheets("Master").Cells(i, 4)
ListBox1.List(0, 2) = Worksheets("Master").Cells(i, 5)
ListBox1.List(0, 3) = Worksheets("Master").Cells(i, 6)
End If
Next i
Also im Grunde die erste Spalte zeigt eine Liste von Namen ... Aber die zweite, dritte und vierte Datenspalte zeigen, für das letzte Spiel in der gleichen Zeile wie die erste match (wenn das Sinn macht?)
Ich fühle mich wie es ist nicht in der Art und Weise Schleifen wie ich es gerne, aber ich kann nicht für das Leben von mir herauszufinden, warum ... Jede Hilfe würde sehr geschätzt werden! !
Danke!
EDIT für Klarheit:
ich ein paar Bilder bin auch besser, das Problem zu beschreiben, eine Test-Arbeitsmappe mit
Dies ist ein Beispiel des Künstlers auf dem Arbeitsblatt ‚Master‘
Und dies ist ein Beispiel für das Arbeitsblatt ich auf das Makro renne (‚Los‘)
Wenn ich das Makro für die artw laufe ork von Hannah Smith, erwarte ich, dass die List Box so etwas wie
Mark Smith 1940 Briten 1999
Adam Smith Australian 1901 1980
Hannah Smith Canadian 1982
jedoch sehen, ist es diese gibt
Mark Smith bekommt die Nationalität und Daten von Hannah Smith, und weder Adam Smith noch Hannah Smith haben zusätzliche Informationen.
Was Sie dieses „Gefühl“ gibt, dass es funktioniert tun Sie nicht, wie Sie es erwarten? Haben Sie versucht, den Code zu debuggen? Vielleicht, wenn Sie ein paar Break-Punkte und überprüfen Sie die Werte der Variablen? Sie könnten auch ein paar Meldungsfelder oder ein "Debug.Print i &" : Vergleiche "& Trimmen (Arbeitsblätter (" Master "). Zellen (i, 1)) &" zu "& Trimmen (passender_Künstler) und überprüfe die Ausgabe, um sicherzustellen, dass die Dinge so laufen, wie du es erwartest/willst – Ralph
Hiya! Ich habe meine Post bearbeitet, um mehr über das Problem zu erklären, und warum ich dieses Gefühl habe. Das Problem ist t Der Code läuft gut, daher wird mir nicht gezeigt, wo das Problem liegt. Ich werde versuchen, was Sie jetzt gesagt haben, vielen Dank für den Vorschlag! – MBot93