Verständnis For
11.12.2020 13:34:47
Sarah
ich komme mit diesem Makro leider garnicht zurrecht.
Ich verstehe den Ablauf der For Schleife nicht so ganz, zumindest macht das Makro nicht das was ich damit bezwecken will.
Was ich programmieren wollte:
zuerst fängt das Makro bei Zeile 2 an mit der Variable "Roww".
dann geht es die "lngRow" variable durch, also 2,3,4,5,6,7,8,9,10,11 während Roww noch 2 ist
und dann soll es die variable "Roww" eins weiter auf 12 gehen.
Dann wieder bei der "lngRow", 12,13,14,15,16,17,18,19,20,21 während Roww noch 12 ist
usw...
was mache ich falsch?
ps: habe aus dem Code elemente gelöscht in den If schleifen damit nur das wichtige sichtbar ist.
Dim lngRow As Long
Dim Roww As Long
Dim D As Long
'Wandelt den Zelleninhalt in ein Datum um
If IsDate(Worksheets("Übersicht").Cells(2, 4).Value) And IsDate(Worksheets("Übersicht"). _
Cells(3, 4).Value) Then
With Worksheets("Import Bestellformular")
'jede 10. Zeile
For Roww = 2 To .Cells(.Rows.Count, 6).End(xlUp).Row Step 10
lngRow = Roww
D = Roww + 9
Do Until lngRow = D
'Wandelt die spalte 3 und 4 in ein Datum um
If IsDate(.Cells(Roww, 3).Value) And IsDate(.Cells(Roww, 4).Value) Then
'Datum Bereich prüfen
If .Cells(Roww, 3).Value
.Cells(Roww, 4).Value >= Worksheets("Übersicht").Cells(3, 4).Value Then
'prüfen ob Spalte N und P leer ist
If Not IsEmpty(.Cells(lngRow, 14).Value) And _
Not IsEmpty(.Cells(lngRow, 16).Value) Then
ElseIf Not IsEmpty(.Cells(lngRow, 14).Value) Then
ElseIf Not IsEmpty(.Cells(lngRow, 16).Value) Then
Else
End If
End If
End If
lngRow = lngRow + 1
Loop
Next Roww
End With
End If
End Sub