title image


Smiley Fehler beim Kompilieren: End If ohne If-Block
Hallo zusammen,



Ich hab mir ein paar Zeilen VBA-Code gebastelt, der mir Werte eines anderen Datensatzes mit der nächst kleineren Kto-Nummer als Standard übernehmen soll. Ist bestimmt nicht unbedingt die eleganteste Lösung die ich da habe, und ich weiß auch noch garnicht ob sie überhaupt funktioniert (von VBA habe ich wenig Ahnung und was ich in C++ gelernt habe ist auch nur noch im Hinterkopf da).

Nun ja, mein Problem gerade ist folgendes: Ich würde gerne testen, ob mein Code zumindest im Ansatz macht was ich möchte (damit ich ihn gegebenenfalls anpassen kann). Ich drücke Kompilieren damit er mir die ganz bösen Fehler gleich zeigt, und dann schimpft er ich hätte ein End If ohne If Block verwendet. Soweit ich aber meinen Code überblicke, habe ich jede Schleife abgeschlossen, und ich sehe auch nicht recht wo ihm da ein End If zuviel sein könnte. Er markiert mir immer die Zeile mit dem ersten If dazu.

Hier mal mein Code (ich hab Namen geändert und etwas gekürzt in der SQL Abfrage, nur ein paar abgefragte Werte raus, nichts an der Syntax)



Private Sub Kto_AfterUpdate()

Dim i As Long

i = Me!Kto

Dim DB As Database

Do

If DCount("Kto", "Tabelle1", "Kto " & i) > 0 Then _

Do While i > 0

If DCount("Kto", "Tabelle1", "Kto = " & i) > 0 Then _

Set DB = CurrentDb

DB.Execute "INSERT INTO Tabelle1 (UStVA, [Steuerklasse]) " _

& "SELECT Tabelle1.[UStVA-Kennziffer], Tabelle1.[Steuerklasse]" _

& "FROM Tabelle1" _

& "WHERE Tabelle1.Kto =" & i

Forms!Tabelle1.Requery

Else: i = i - 1

End If

Loop

End If

Loop Until i = 0



Vielleicht kann mir einer von euch helfen und sieht woher die Fehlermeldung kommt? Vielen Dank :)



Peige

geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: