Hallo zusammen!
Ich habe folgendes Problem:
Ich habe in einer Excel-Tabelle zwei Listen mit Namen. In Spalte A befinden sich die Nachnamen der ersten Liste, in Spalte B die Vornamen der ersten Liste. Dementsprechend Spalte C Nachnamen der zweiten Liste und D Vornamen. Nun will ich eine neue Liste über Spalte E und F erzeugen, die alle Namen enthält, die in BEIDEN gegebenen Listen vorkommen. Dazu habe ich folgendes (kurzes) Script entworfen:
Private Sub ButtonEvaluate_Click()
n = 2
m = 2
o = 2
Do Until ActiveWorkbook.ActiveSheet.Range("A" & n).Value = ""
Do Until ActiveWorkbook.ActiveSheet.Range("C" & m).Value = ""
MsgBox "Verglichen werden " & ActiveWorkbook.ActiveSheet.Range("B" & n).Value & " " & ActiveWorkbook.ActiveSheet.Range("A" & n).Value & " und " & ActiveWorkbook.ActiveSheet.Range("D" & m).Value & " " & ActiveWorkbook.ActiveSheet.Range("C" & m).Value
If ActiveWorkbook.ActiveSheet.Range("A" & n).Value = ActiveWorkbook.ActiveSheet.Range("C" & m).Value And ActiveWorkbook.ActiveSheet.Range("B" & n).Value = ActiveWorkbook.ActiveSheet.Range("D" & m).Value Then
ActiveWorkbook.ActiveSheet.Range("E" & o).Value = ActiveWorkbook.ActiveSheet.Range("A" & n).Value
ActiveWorkbook.ActiveSheet.Range("F" & o).Value = ActiveWorkbook.ActiveSheet.Range("B" & n).Value
o = o + 1
End If
m = m + 1
Loop
n = n + 1
Loop
End Sub
Ich vergleiche also jeden Namen aus der ersten Liste mit jedem Namen aus der zweiten Liste. Jedoch habe ich festgestellt, dass die äußere Schleife nur 1x ausgeführt wird, mit anderen Worten nur der erste Name der ersten Liste mit allen anderen der zweiten verglichen wird. Woran kann das liegen? Kann man "Do-Until"-Schleifen überhaupt verschachteln?
Mfg Nico |