Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1796to1800
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

With/If Konstruktion

With/If Konstruktion
08.12.2020 18:10:39
Sarah
Ich habe das Gefühl, dass ich was falsch mache bei meiner Konstruktion von den IF schleifen in Verbindung mit den For schleifen.
Fehlermeldung: "End With ohne With"
Sub if()
If IsDate(Worksheets("Übersicht").Cells(2, 4).Value) And IsDate(Worksheets("Übersicht").Cells(3, _
4).Value) Then
With Worksheets("Import Bestellformular")
For lngRow = 2 To .Cells(.Rows.Count, 3).End(xlUp).Row Step 10
For lngRow1 = 3 To .Cells(.Rows.Count, 3).End(xlUp).Row Step 10
If IsDate(.Cells(lngRow, 3).Value) And IsDate(.Cells(lngRow, 4).Value) Then
If .Cells(lngRow, 3).Value .Cells(lngRow, 4).Value >= Worksheets("Übersicht").Cells(3, 4).Value _ Then
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
'---------------------------------------------------------------------------------------------- _ --------lngRow1
If Not IsEmpty(.Cells(lngRow1, 14).Value) And _
Not IsEmpty(.Cells(lngRow1, 16).Value) Then
....
ElseIf Not IsEmpty(.Cells(lngRow1, 14).Value) Then
....
ElseIf Not IsEmpty(.Cells(lngRow1, 16).Value) Then
...
Else
...
End If
End If
End If
Next
'Next lngRow1
End With
End If
End Sub
Was mache ich falsch?

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: With/If Konstruktion
08.12.2020 18:23:47
Marc
Hallo Sarah,
1. Next lngRow1 muss vor Next kommen, da du oben erst
For lngRow = 2 To .Cells(.Rows.Count, 3).End(xlUp).Row Step 10
For lngRow1 = 3 To .Cells(.Rows.Count, 3).End(xlUp).Row Step 10
definierst.
2. Next lngRow1 ist mit einem " ' " aus dem Code genommen. Da hängt er sich auf, da er die For-Schleifen nicht zu ende ausführen kann.
Gruß Marc
"If" ist aber auch kein schöner Sub-Name ...
08.12.2020 18:26:27
lupo1
AW: With/If Konstruktion
08.12.2020 21:17:46
onur
Wie lupo1 schon erwähnte: VBA-Befehle und -Funktionen sind als Sub-, Funktions- und Variablennamen tabu, weil sie sonst böse Überraschungen (im günstigsten Falle nur eine Fehlermeldung) bereiten können.
Anzeige
AW: With/If Konstruktion
08.12.2020 23:13:31
Yal
Hallo Sarah,
deine 6 letzten Zeilen
            Next
'Next lngRow1
End With
End If
End Sub
in folgendes umstellen
            Next lngRow1
Next lngRow
End With
End If
End Sub

Tipp:
_ verwende Variablen um Wiederholung zu vermeiden (vor unlesbaren)
_ Value ist der Default-Eigenschaft eine Zelle und kann erspart werden (nicht immer)
Sub WäreWenn()
Dim UbSi2
Dim UbSi3
Dim Best3
Dim Best4
UbSi2 = Worksheets("Übersicht").Cells(2, 4)
UbSi3 = Worksheets("Übersicht").Cells(3, 4)
If IsDate(UbSi2) And IsDate(UbSi3) Then
With Worksheets("Import Bestellformular")
For lngRow = 2 To .Cells(.Rows.Count, 3).End(xlUp).Row Step 10
For lngRow1 = 3 To .Cells(.Rows.Count, 3).End(xlUp).Row Step 10
Best3 = .Cells(lngRow, 3)
Best4 = .Cells(lngRow, 4)
If IsDate(Best3) And IsDate() Then
If Best3 = UbSi3 Then
Select Case (IsEmpty(.Cells(lngRow, 14)) * -1) & (IsEmpty(.Cells(lngRow, _
16)) * -1)
Case "00"
Case "10", "11"
Case "01"
Case Else
End Select
Select Case (IsEmpty(.Cells(lngRow1, 14)) * -1) & (IsEmpty(.Cells( _
lngRow1, 16)) * -1)
Case "00"
Case "10", "11"
Case "01"
Case Else
End Select
End If
End If
Next lngRow1
Next lngRow
End With
End If
End Sub
Viel Erfolg
Yal
Anzeige
AW: With/If Konstruktion
09.12.2020 16:50:41
Sarah
Ah ich habs jetzt hin bekommen.
Danke für eure Hilfe und euren Hinweis.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige