Logik: kann mir das einer erklären?
23.08.2005 14:21:25
Powolny
hab da ein kleines logisches Problem:
i=12
j=2
While j <> 0 And j < 32
If Sheets(1).Cells(12, j).Value = "" Then
j = j + 3
Else:
While i <> 0
Sheets(1).Cells(i, j).Select
Selection.Copy
Sheets(1).Cells(i + 88, j).Select
ActiveSheet.Paste
i = i + 1
Sheets(1).Cells(i, j).Select
If Selection.Value = "" Then i = 0
Wend
j = j + 3
End If
Wend
Das müsste doch so ablaufen:
Wenn in Zelle B12 nichts steht, wird j um 3 erhöht. Also auf 5. Steht in Zelle E12 auch wieder nichts, wird j wieder um 3 erhöht. Also auf 8. usw.
Steht in Zelle B12 etwas, wird die Zelle markiert und der Inhalt in die Zwischenablage kopiert. Danach wird Zelle B100 markiert und der gespeicherte Inhalt der Zwischenablage in diese Zelle eingefügt. Dann wird i um eins erhöht und das Spiel beginnt von vorn. Sprich, Zelle B13 wird markiert, kopiert. Zelle B101 wird markiert, eingefügt. Das solange, bis eine leere Zelle kommt. Dann wird j um 3 erhöht und geschaut, ob in Zelle E12 etwas steht, wenn nicht, wird j wieder um 3 erhöht und wieder geschaut, usw. bis j 32 ist. Steht irgendwann mal was in einer der ausgewählten Zellen, wird so verfahren wie oben beschrieben.
Stimmt das so?
Gruß ich