Laufzeitfehler '1004' - Aber nur bei INDIREKTEM Aufruf!
04.04.2025 10:36:00
rgill
folgendes Problem/Phänomen:
Ich habe in einem .xlsm-Dokument (nenne es weiterhin Dok1) Schrittweise Subs implementiert. Während des Aufbaus/Tests habe ich die Subs ganz einfach einzeln, nacheinander über Buttons aufgerufen. Nachdem alles lief wie gewünscht, wollte ich nun die Subs über Workbook_Open und Call automatisch beim Öffnen des Dokuments aufrufen. Nun erhalte ich den Fehler:
"Laufzeitfehler '1004': Die Methode 'ExportAsFixedFormat' für das Objekt '_Workbook' ist fehlgeschlagen."
Das ist der betroffene Sub, fettgedruckt die Zeile die den Fehler auslöst:
Sub export()
Dim strPath, strFilename As String
strPath = ThisWorkbook.Path & "\reports\"
strFilename = strPath & "e2n_Report_" & ThisWorkbook.Sheets(1).Cells(2, 2) & ".pdf"
ThisWorkbook.ExportAsFixedFormat Type:=xlTypePDF, Filename:=strFilename _
, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
:=False, From:=2, To:=7, OpenAfterPublish:=False
Call mail
End Sub
Auch wenn ich den Sub "export" über einen anderen Sub calle, wird der Fehler ausgelöst. Ich habe ein anderes Dokument (Dok2) mit einer ähnlichen Auswertung und genau diesem pdf-Export-sub, dort läuft er fehlerfrei, auch über den workbook_open-Aufruf. Ich habe das Dokument auch an anderen Speicherorten (direkt auf C:/ etc.) ausprobiert: es macht keinen Unterschied.
Der einzige Unterschied den ich zwischen Dok1 und Dok2 sehe ist: Dok2 sammelt einfach nur Daten aus anderen Exceldokumenten ein (workbook.open, einlesen, workbook.close) und in Dok1 ist eine aktive Datenverbindung ("Daten aus dem Web", Connectorabfrage mit Token) vorhanden. Aber, wie gesagt, wenn ich die einzelnen Subs manuell aufrufe, läuft alles:
1. ChangeParameterValue: Daten werden abgerufen, dauert ca. 30 sec.
2. export: pdf-Dokument wird erzeug
3. mail: pdf-Dokument wird in den Anhang einer Mailnachricht gepackt.
Allein schon wenn ich "export" im ersten Sub "ChangeParameterValue" > via call export aufrufe, kommt der Fehler.
Bin für jeden Tipp dankbar! Das Dok1 soll, wie schon erfolgreich Dok2, automatisch morgens über die Windows Aufgabenplanung aufgerufen werden und einen Bericht verschicken.
Anzeige