Excel-VBA-Kompilieren-Fehler Else ohne If

Ich versuchen einen code, wenn Spalte "L" und der Spalte "V" angegeben "Abgeschlossen" auf beide. Dann Spalte "B" zeigt "Abgeschlossen" sonst wird es zeigen "unvollständige" es zeigt aber, kompilieren Fehlermeldung "Else ohne if".

Unten ist mein code

Sub OverallStatus()

Dim x As Long
Dim lastrow As Long

With Sheet1
    If Application.WorksheetFunction.CountA(.Cells) <> 0 Then
         lastrow = .Cells.Find(What:="*", _
                     After:=.Range("A1"), _
                     Lookat:=xlPart, _
                     LookIn:=xlFormulas, _
                     SearchOrder:=xlByRows, _
                     SearchDirection:=xlPrevious, _
                     MatchCase:=False).Row
    Else
        lastrow = 1
    End If
    For x = 2 To lastrow
        If .Range("L" & x) = "Completed" And .Range("V" & x) = "Completed" Then
        .Range("W" & x) = "Completed"
        Else: .Range("W" & x) = "Incomplete"
        End If
    Next
End With
End Sub
  • In Ihrem Fall ist das "Dann" muss auf der gleichen Zeile wie die "Wenn", aber es sollte die Letzte Sache auf der Strecke und der Teil nach dem "Dann" sollte auf einer separaten Zeile. Wenn Sie alles, was nach dem "Dann" in der gleichen Zeile wie die "Wenn", dann die "If" ist eine einzelne Zeile-statement und dann "Else" und "End If" muss auch auf der gleichen Linie.
  • Bitte poste keine Bilder von deinem code. Es macht den code schwer zu Lesen sind, wird verhindert, dass beim kopieren/einfügen, um zu testen oder Probleme zu lösen, und es ist eher unfreundlich für Benutzer mit eingeschränkter Bandbreite. Kopieren Sie den code und/oder in entsprechenden Fehlermeldungen, und fügen Sie Sie als text zu deiner Frage. Bilder sollten nur verwendet werden, wenn sonst nichts funktioniert, um zu erklären, das Problem, das Sie haben. Bitte Bearbeiten, um den eigentlichen code. (Eine Aufnahme des gesamten Bildschirms ist auch in keiner Weise relevant für die Frage; könnte man zumindest höflich genug, um es beschneiden, um die minimale Größe erforderlich.) Danke.
  • End if platziert werden soll nach .range("B" & x) = "Unvollständig" ...Nicht nach der nächsten
  • Ich bitte um Entschuldigung, ich schon aktualisiert, meinen code display-format.
InformationsquelleAutor user3006276 | 2014-02-21
Schreibe einen Kommentar