im Zuge einer Programmieraufgabe öffne ich eine 2. Excel Datei und lasse in einer Schleife nach einer Nummer suchen. Wenn die Nummer gefunden wurde, dann wird der Wert, der 2 Zellen weiter rechts steht in meine Aktuelle tabelle in
die entsprechende Spalte geschrieben. Die Gerätenummern sind aber in beiden Dokumenten nicht in der gleichen Reihenfolge, also werden einige überpsrungen. Wenn aber nun eine übersprungene Nummer später auftaucht ist der Zähler zu weit gelaufen, ich müsste also entweder bei jedem durchlauf wieder bei 1 anfangen oder am Besteh die Schleife auf Anfrage rückwehrts durch die Tabelle Laufen lassen. Ich komme damit aber nicht hin ohne eine Endlosschleife zu basteln, vielleicht kann mir wer helfen? Code zur Aufgabe:
'Variablen füllen
Set WBAktuell = Workbooks(ActiveWorkbook.Name)
Set WSSteuerung = WBAktuell.Worksheets("Steuerung")
Sprungmarke:
x = 85
y = 21
z = 1
'Laufwerke und file aus dem Worksheet "Steuerung" übernehmen
ChDrive WSSteuerung.Cells(3, 2)
StrLoadpath = WSSteuerung.Cells(24, 3)
StrLoadfile = WSSteuerung.Cells(24, 4)
ChDir StrLoadpath
'
Do While Tabelle1.Cells(x, y - 3) = 7095
If Tabelle1.Cells(x, y) "" Then
DblVergleich = Tabelle1.Cells(x, y)
Else
Exit Sub
End If
Workbooks.Open Filename:=StrLoadpath & StrLoadfile
Set WSGeraete = Workbooks(StrLoadfile).Worksheets("Gerätebestand neu")
Do While WSGeraete.Cells(z, 1) ""
If WSGeraete.Cells(z, 1) = DblVergleich Then
Tabelle1.Cells(x, y + 3) = WSGeraete.Cells(z, 3)
Exit Do
Else
End If
z = (z + 1)
Loop
DblVergleich = 0
x = x + 1
'
Loop
------
Schonmal danke für die Hilfe! Gruß: Benjamin