Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Syntaxfehler bei err-handler

Forumthread: Syntaxfehler bei err-handler

Syntaxfehler bei err-handler
30.07.2003 13:13:16
Rico
Helau Leuitz
habe folgenden Code

Sub SaveAuftrag()
on error goto err_handler
ActiveWorkbook.SaveAs _
FileName:="G:\Spezial\Auftrags-Dossiers\Aufträge\" _
& Range("F3").Value, _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
exit sub
err_handler:
msgbox "Fehlernr.: " & err.number & vbcrlf
"Fehlertext: " & err.description
End Sub

bei der zweitletzten Zeile bekomme ich im VB-Editor diese Meldung:
"Fehler beim Kompilieren
Erwartet Zeilennummer oder Sprungmarke oder Anweisung oder Anweisungsende"
bin leider noch nicht derart VB-bewandert um die Lösung selbst zu finden und daher dankbar für jeden Tip.
Gruss Rico
Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Syntaxfehler bei err-handler
30.07.2003 13:20:20
xXx
Hallo,
du hast zweizeilig geschrieben. Da musst du in der ersten Zeile erst ein Leerzeichen und dann einen Unterstrich machen, dami die Anweisung in der nächsten Zeile weiter geht. In der 2.Zeile fehlte ein &.
err_handler:
msgbox "Fehlernr.: " & err.number & vbcrlf _
&"Fehlertext: " & err.description
Gruß aus'Pott
Udo

Anzeige
AW: Syntaxfehler bei err-handler
30.07.2003 13:22:40
HerbertH
Hallo Rico,
So müßte es funktionieren..

Gruß Herbert

soweit sogut.. ABER... :-)
30.07.2003 13:39:46
Rico
Hi zusammen..
zuerst mal dankeschön für die tolle Hilfe. Die Fehlermeldung kommt prompt und ohne Laufzeitfehler :-)
Aber wenn ich nun eine Zahl in die Zelle einfüge und den Button betätige, kommt diese Meldung auch :-(.. hab ich das vielleicht wieder was am Code gebastelt was nicht sein sollte??

Sub SaveAuftrag()
On Error GoTo err_handler
ActiveWorkbook.SaveAs _
FileName:="c:\Eigene Dateien\" _
& Range("F3").Value, _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
Exit Sub
err_handler:
MsgBox "Fehlernr.: " & Err.Number & vbCrLf & _
"Keine Auftragsnummer eingegeben:" & " Sie müssen die Auftragsnummer eingeben damit die Datei gespeichert werden kann"
End Sub

...irgendwann wirds bestimmt fertig .. mein erstes kleines VBA-Projekt :-)
Gruss aus Zürich

Anzeige
AW: soweit sogut.. ABER... :-)
30.07.2003 13:50:06
Stephan
Hi!
Hab den Code gerade getestet. Bei mir funzt er. Auch mit einer Zahl in der Zelle F3.
Hast Du Sonderzeichen verwendet, die man beim Dateinamen nicht benützen darf ?

keine Sonderzeichen
30.07.2003 13:52:12
Rico
Hi Stephan
nein, Sonderzeichen brauch ich da keine.. eine Zahl.. zBsp. 031135
kann es sein, dass die 0 am Anfang ein Problem verursacht ?

Anzeige
AW: keine Sonderzeichen
30.07.2003 13:56:17
HerbertH
hast schon mal auf das Laufwerk geschaut,
das habe ich nämlich geändert...

Sub SaveAuftrag()
On Error GoTo err_handler
ActiveWorkbook.SaveAs _
Filename:="G:\Spezial\Auftrags-Dossiers\Aufträge\" _
& Range("F3").Value, _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
Exit Sub
err_handler:
MsgBox "Fehlernr.: " & Err.Number & vbCrLf & _
"Fehlertext: " & Err.Description
End Sub

Gruß Herbert

Anzeige
ich SUUPERNASE :-))
30.07.2003 13:59:58
Rico die Nase :-)
Hallo Herbert
ja klar lags an dem... ich suupernase lach..
vielen Dank und noch einen schönen Nachmittag allen Helfenden!!
sonnige Grüsse aus Zürich
Rico

AW: soweit sogut.. ABER... :-)
30.07.2003 14:01:28
Knut
FileName:="c:\Eigene Dateien\" _
& Range("F3").Text & ".xls",
Falls die Extension nicht in der Zelle steht.
Knut

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

Fehlerbehebung bei Syntaxfehlern im VBA-Code


Schritt-für-Schritt-Anleitung

  1. Code Überprüfen: Stelle sicher, dass der Code korrekt formatiert ist. Achte darauf, dass Du bei mehrzeiligen Anweisungen ein Leerzeichen und einen Unterstrich (_) am Ende der Zeile verwendest.

    Beispiel:

    ActiveWorkbook.SaveAs _
    FileName:="G:\Spezial\Auftrags-Dossiers\Aufträge\" _
    & Range("F3").Value
  2. Error Handler Implementieren: Der Error Handler sollte korrekt konfiguriert sein. Achte darauf, dass Du die Err-Objekte richtig ansprechen kannst.

    Beispiel:

    err_handler:
    MsgBox "Fehlernr.: " & Err.Number & vbCrLf & _
    "Fehlertext: " & Err.Description
  3. Testen des Codes: Führe den Code aus, um sicherzustellen, dass er ohne Fehler läuft. Achte auf mögliche Fehlermeldungen wie „fehler beim kompilieren erwartet anweisungsende“.


Häufige Fehler und Lösungen

  • Syntaxfehler: Wenn Du die Fehlermeldung „fehler beim kompilieren syntaxfehler“ erhältst, überprüfe, ob alle Anweisungen und deren Enden korrekt sind.

  • Fehlendes & Symbol: Ein häufiges Problem ist das Fehlen des Verknüpfungszeichens (&) am Ende einer Zeile. Dies kann dazu führen, dass der Compiler nicht versteht, dass die Anweisung fortgesetzt wird.

  • Falscher Dateiname: Achte darauf, dass der in Range("F3").Value angegebene Dateiname keine Sonderzeichen enthält, die in Dateinamen nicht erlaubt sind.


Alternative Methoden

  • Verwendung von .Text: Wenn Du sicherstellen möchtest, dass der Dateiname als Text behandelt wird, kannst Du .Text verwenden:

    Filename:="c:\Eigene Dateien\" & Range("F3").Text & ".xls"
  • Fehlerbehandlung verbessern: Statt nur die Fehlernummer anzuzeigen, kannst Du den Benutzer über spezifische Probleme informieren, um die Fehlerdiagnose zu erleichtern.


Praktische Beispiele

Hier ist ein funktionierendes Beispiel für einen VBA-Code, der eine Datei speichert und dabei Fehlerbehandlung implementiert:

Sub SaveAuftrag()
    On Error GoTo err_handler
    ActiveWorkbook.SaveAs _
    Filename:="G:\Spezial\Auftrags-Dossiers\Aufträge\" & Range("F3").Value, _
    FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
    ReadOnlyRecommended:=False, CreateBackup:=False
    Exit Sub
err_handler:
    MsgBox "Fehlernr.: " & Err.Number & vbCrLf & _
    "Fehlertext: " & Err.Description
End Sub

Tipps für Profis

  • Debugging: Nutze die Debugging-Tools von VBA, um den Code Schritt für Schritt durchzugehen. Setze Haltepunkte, um zu sehen, wo der Fehler auftritt.

  • Kommentare hinzufügen: Füge Kommentare im Code hinzu, um die Funktionalität jeder Zeile zu erklären. Dies hilft nicht nur Dir, sondern auch anderen, die Deinen Code lesen.

  • Code modularisieren: Teile komplexe Funktionen in kleinere, übersichtlichere Subroutinen auf. Das macht den Code leichter wartbar und verständlicher.


FAQ: Häufige Fragen

1. Warum bekomme ich einen Syntaxfehler?
Syntaxfehler treten häufig auf, wenn Anweisungen nicht korrekt formatiert sind oder wenn ein Zeichen fehlt.

2. Was bedeutet „fehler beim kompilieren erwartet anweisungsende“?
Diese Fehlermeldung zeigt an, dass der Compiler ein Ende einer Anweisung erwartet, das nicht gefunden wurde. Überprüfe Deine Zeilenaufteilung und das Vorhandensein von Verknüpfungszeichen (&).

3. Kann ich auch mit Zahlen im Dateinamen speichern?
Ja, Du kannst Zahlen im Dateinamen verwenden, jedoch sollten sie keine führenden Nullen enthalten, da dies zu Problemen führen kann.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige