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

Laufzeifehler 1004

Forumthread: Laufzeifehler 1004

Laufzeifehler 1004
13.03.2013 16:58:52
Michael
hallo forum,
frage:
ich habe ein makro über den vba editor erstellt.
wenn ich mit f8 in der editor ansicht das makro teste funktionieert alles.
wenn ich dann über mein excel sheet das makro aufrufe erscheint die Meldung:
Laufzeitfehler'1004':
VB-Projekte und xlm-Blätter können ein einer Arbeitsmappe ohne Makros nicht
gespeichert werden.
beim debuggen wird folgende row markiert:
If Zelleninhalt_A = "GESPERRT" Then
ActiveWorkbook.SaveAs Filename:="C:\Users\xxx\Desktop\" & Zelleninhalt_A & "_" & Log & "_" & TB, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
Else
ActiveWorkbook.SaveAs Filename:="C:\Users\xxx\Desktop\" & Log & "_" & TB, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
End If

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
xlOpenXMLWorkbook = ohne Makros !
13.03.2013 17:07:44
NoNet
Hallo Michael,
Das Dateiformat xlOpenXMLWorkbook entspreicht der Dateiendung XLSX - also OHNE Makros und andere VB-Elemente (Module, UserForms etc.)
Ändere das Dateiformat entsprechend, um die Datei MIT VB-Elementen zu speichern :
FileFormat:=xlOpenXMLWorkbookMacroEnabled '=> Dateiformat XLSM
Gruß, NoNet

Anzeige
AW: xlOpenXMLWorkbook = ohne Makros !
14.03.2013 07:50:46
Michael
besten Dank NoNet!
jetzt funkt es wieder.
gruß Michael
;
Anzeige

Infobox / Tutorial

Laufzeitfehler 1004 in Excel beheben


Schritt-für-Schritt-Anleitung

  1. Öffne den VBA-Editor: Drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Finde dein Makro: Suche das Makro, das den Fehler verursacht.
  3. Überprüfe die Zeile mit dem Fehler: Achte auf die Zeile, die mit ActiveWorkbook.SaveAs beginnt. Diese Zeile könnte problematisch sein, wenn das Dateiformat nicht korrekt ist.
  4. Ändere das Dateiformat: Stelle sicher, dass du das richtige Dateiformat verwendest. Wenn du VB-Elemente (wie Module oder UserForms) speichern möchtest, ändere die Zeile zu:
    ActiveWorkbook.SaveAs Filename:="C:\Users\xxx\Desktop\" & Zelleninhalt_A & "_" & Log & "_" & TB, FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
  5. Teste das Makro: Starte das Makro erneut über dein Excel-Sheet, um sicherzustellen, dass der Fehler behoben ist.

Häufige Fehler und Lösungen

  • Laufzeitfehler 1004: Dieser Fehler tritt häufig auf, wenn du versuchst, eine Datei im xlOpenXMLWorkbook Format zu speichern, das keine Makros unterstützt. Stelle sicher, dass du das Format xlOpenXMLWorkbookMacroEnabled verwendest, wenn du Makros in deiner Datei hast.

  • Dateipfad überprüfen: Achte darauf, dass der angegebene Dateipfad korrekt ist. Ein falscher oder nicht existierender Pfad kann ebenfalls zu Fehlern führen.


Alternative Methoden

  • Manuelles Speichern: Du kannst versuchen, die Datei manuell über "Datei" -> "Speichern unter" zu speichern und das Format XLSM auszuwählen, wenn du sicherstellen möchtest, dass alle Makros enthalten sind.

  • VBA zur Fehlerbehandlung: Füge Fehlerbehandlungsroutinen in dein Makro ein, um mögliche Probleme beim Speichern abzufangen:

    On Error Resume Next
    ActiveWorkbook.SaveAs Filename:="C:\Users\xxx\Desktop\Dateiname.xlsm", FileFormat:=xlOpenXMLWorkbookMacroEnabled
    If Err.Number <> 0 Then
       MsgBox "Fehler beim Speichern: " & Err.Description
    End If
    On Error GoTo 0

Praktische Beispiele

Wenn du eine Arbeitsmappe mit Makros speichern möchtest, könnte dein Code folgendermaßen aussehen:

Sub SpeichernMitMakros()
    Dim Zelleninhalt_A As String
    Dim Log As String
    Dim TB As String
    ' Beispielwerte
    Zelleninhalt_A = "GESPERRT"
    Log = "Logdatei"
    TB = "Testbericht"

    If Zelleninhalt_A = "GESPERRT" Then
        ActiveWorkbook.SaveAs Filename:="C:\Users\xxx\Desktop\" & Zelleninhalt_A & "_" & Log & "_" & TB, FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
    Else
        ActiveWorkbook.SaveAs Filename:="C:\Users\xxx\Desktop\" & Log & "_" & TB, FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
    End If
End Sub

Tipps für Profis

  • Verwende immer die richtige Dateiendung: Wenn du mit Makros arbeitest, achte darauf, dass du das xlOpenXMLWorkbookMacroEnabled Format verwendest, um Laufzeitfehler zu vermeiden.

  • Debugging-Tipps: Nutze die F8-Taste im VBA-Editor, um dein Makro schrittweise auszuführen. So kannst du leicht finden, wo der Fehler auftritt.


FAQ: Häufige Fragen

1. Was bedeutet der Laufzeitfehler 1004?
Dieser Fehler tritt auf, wenn versucht wird, eine Arbeitsmappe in einem Format zu speichern, das keine Makros unterstützt.

2. Wie kann ich meine Datei mit Makros speichern?
Verwende das folgende Format in deinem VBA-Code: FileFormat:=xlOpenXMLWorkbookMacroEnabled.

3. Welche Dateiendungen sind für Excel-Dateien wichtig?
XLSX für Arbeitsmappen ohne Makros und XLSM für Arbeitsmappen mit Makros.

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