Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Save As Methode fehlgeschlagen VBA

Save As Methode fehlgeschlagen VBA
andreas
Hallo zusammen,
habe hier einen kleinen Code zum Speichern der Tabelle. Funktioniert auch solange noch keine Datei mit gleichem Namen vorhanden ist.
Ist diese vorhanden kommt ja die Abfrage vorhandene überschreiben ja oder nein. Bei ja wird problemlos überschrieben, aber bei nein kommt der Fehler "Save As Methode fehlgeschlagen"
Private Sub CommandButton3_Click()
ActiveWorkbook.SaveAs Filename:= _
"j:\1zu1_Mitarbeiterordner\Andreas\kalkulation_frästeile\" & Range("c5").Value _
, FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False = False
End Sub

Wer kann mir sagen wie ich das machen muss damit auch ein Abbruch möglich ist.
Bin für jeden Tipp dankbar
Gruß Andreas
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Save As Methode fehlgeschlagen VBA
28.05.2010 14:53:21
Rudi
Hallo,
ausnahmsweise mal On Error.
  On Error Resume Next
ActiveWorkbook.SaveAs Filename:= _
"j:\1zu1_Mitarbeiterordner\Andreas\kalkulation_frästeile\" & Range("c5").Value _
, FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False = False
If Err Then
MsgBox "nicht gespeichert"
End If
On Error GoTo 0

Gruß
Rudi
Anzeige
AW: Save As Methode fehlgeschlagen VBA
28.05.2010 15:07:00
andreas
Hallo Rudi,
vielen Dank klappt wunderbar.
noch eine Kleinigkeit, ich würde mich gerne intensiver mit VBA beschäftigen, mir fehlt aber der richtige Einstieg so richtig von Anfang an. Ich weiss nicht wie ich zu den richtigen Begriffen komme, bzw. wo ich was finde und wie richtig aufgebaut wird.
Kannst du mir vielleicht eine gute Seite oder Lektüre empfehlen?
Gruß Andreas
Anzeige
siehe hier oben:Grundwerk ! OwT
28.05.2010 15:10:06
Tipp
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Fehlerbehebung: "Save As Methode fehlgeschlagen" in VBA


Schritt-für-Schritt-Anleitung

  1. Öffne deinen Excel VBA-Editor: Drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Erstelle einen neuen Button: Füge einen Button in dein Arbeitsblatt ein, um die Speicherung auszulösen.

  3. Füge den folgenden Code ein:

    Private Sub CommandButton3_Click()
       On Error Resume Next
       ActiveWorkbook.SaveAs Filename:= _
       "j:\1zu1_Mitarbeiterordner\Andreas\kalkulation_frästeile\" & Range("c5").Value, _
       FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
       ReadOnlyRecommended:=False, CreateBackup:=False
    
       If Err Then
           MsgBox "Datei konnte nicht gespeichert werden."
       End If
    
       On Error GoTo 0
    End Sub
  4. Teste die Funktion: Klicke auf den Button, um den Speichervorgang zu starten. Wenn die Datei bereits existiert, wirst du gefragt, ob du sie überschreiben möchtest.


Häufige Fehler und Lösungen

  • Fehler: "Die Methode SaveAs für das Objekt _Workbook ist fehlgeschlagen":

    • Lösung: Stelle sicher, dass der Dateiname in Range("c5").Value gültig ist und keine ungültigen Zeichen enthält.
  • Fehler: Kein Abbrechen möglich:

    • Lösung: Implementiere On Error Resume Next, um die Speicherung zu überspringen, wenn der Benutzer "Nein" wählt.

Alternative Methoden

  • Verwendung von Workbook.SaveCopyAs: Anstatt die Datei direkt zu speichern, kannst du eine Kopie der Datei unter einem neuen Namen speichern:

    ActiveWorkbook.SaveCopyAs "j:\1zu1_Mitarbeiterordner\Andreas\kalkulation_frästeile\neuer_name.xlsx"
  • Excel VBA Save As in einem anderen Format: Um in einem anderen Format zu speichern, ändere FileFormat entsprechend.


Praktische Beispiele

  • Beispiel für das Speichern mit Datum:

    Dim SavePath As String
    SavePath = "j:\1zu1_Mitarbeiterordner\Andreas\kalkulation_frästeile\" & Range("c5").Value & "_" & Format(Date, "yyyymmdd") & ".xlsx"
    ActiveWorkbook.SaveAs Filename:=SavePath, FileFormat:=xlOpenXMLWorkbook
  • Beispiel für das Speichern mit Benutzerabfrage:

    Dim Response As VbMsgBoxResult
    Response = MsgBox("Möchten Sie die Datei überschreiben?", vbYesNo + vbQuestion)
    If Response = vbYes Then
       ActiveWorkbook.SaveAs Filename:="j:\1zu1_Mitarbeiterordner\Andreas\kalkulation_frästeile\" & Range("c5").Value
    End If

Tipps für Profis

  • Verwende FileDialog für eine benutzerfreundliche Dateiauswahl:

    Dim fd As FileDialog
    Set fd = Application.FileDialog(msoFileDialogSaveAs)
    If fd.Show = -1 Then
       ActiveWorkbook.SaveAs fd.SelectedItems(1)
    End If
  • Regelmäßige Sicherungen: Implementiere automatische Sicherungen, um Datenverlust zu vermeiden.


FAQ: Häufige Fragen

1. Warum erhalte ich die Fehlermeldung "Die Methode SaveAs für das Objekt _Workbook ist fehlgeschlagen"? Diese Fehlermeldung tritt häufig auf, wenn der Dateiname ungültige Zeichen enthält oder ein Speicherort nicht verfügbar ist.

2. Wie kann ich den Benutzer fragen, ob die Datei überschrieben werden soll? Du kannst eine MsgBox verwenden, um den Benutzer zu fragen, ob er die Datei überschreiben möchte, bevor du den Speichervorgang durchführst.

3. Welche Dateiformate kann ich beim Speichern verwenden? Du kannst verschiedene FileFormat-Optionen wie xlOpenXMLWorkbook (für .xlsx) oder xlExcel8 (für .xls) verwenden.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige