Fehlermeldung beim Ausführen eines Visual Basic for Applications-Makros in Excel: "Methode" SaveAs "des Objekts" _Worksheet "fehlgeschlagen"


Problembeschreibung


Wenn Sie ein Visual Basic für Applikationen-Makro in Microsoft Excel ausführen, wird möglicherweise die folgende oder ähnliche Fehlermeldung angezeigt:
Laufzeitfehler ' 1004 ': Fehler bei der Methode "SaveAs" des Objekts ' _Worksheet '

Ursache


Dieses Verhalten kann auftreten, wenn die folgenden Bedingungen zutreffen:
  • Sie verwenden ein Visual Basic für Applikationen-Makro, um ein Arbeitsblatt zu speichern.-und-
  • Sie geben das Dateiformat als Konstante xlWorkbookNormal.
Der folgende Code bewirkt beispielsweise, dass dieser Fehler auftritt:
Sub A()   Dim myNewSheet As Worksheet   Set myNewSheet = ActiveSheet   FileNameBin = "c:\ABC"   myNewSheet.SaveAs Filename:=FileNameBin, FileFormat:=xlWorkbookNormalEnd Sub

Problemumgehung


Microsoft bietet Programmierbeispiele nur zur Illustration, ohne ausdrückliche oder implizierte Garantie, einschließlich, aber nicht ausschließlich, der implizierten Garantien der Marktgängigkeit und/oder Eignung für einen bestimmten Zweck. In diesem Artikel wird davon ausgegangen, dass Sie mit der gezeigten Programmiersprache und den Tools vertraut sind, die zum Erstellen und Debuggen von Prozeduren verwendet werden. Microsoft-Supportmitarbeiter können Ihnen helfen, die Funktionalität einer bestimmten Prozedur zu erläutern, aber diese Beispiele werden nicht geändert, um zusätzliche Funktionen bereitzustellen oder Verfahren zu erstellen, die ihren spezifischen Anforderungen entsprechen. Wenn Sie über begrenzte Programmierkenntnisse verfügen, sollten Sie sich an einen Microsoft Certified-Partner oder an Microsoft Advisory Services wenden. Weitere Informationen finden Sie auf den folgenden Microsoft-Websites: Microsoft Certified Partners- https://Partner.Microsoft.com/Global/30000104Microsoft Advisory Services- http://support.Microsoft.com/GP/advisoryserviceWeitere Informationen zu den verfügbaren Supportoptionen und zur Kontaktaufnahme mit Microsoft finden Sie auf der folgenden Microsoft-Website:http://support.Microsoft.com/default.aspx?scid=fh; EN-US; CNTACTMSUm dieses Verhalten zu umgehen, ändern Sie die Dateiformatspezifikation aus der Konstanten xlWorkbookNormal in 1. Der Beispielcode funktioniert normal, wenn in geändert:
Sub A()   Dim myNewSheet As Worksheet   Set myNewSheet = ActiveSheet   FileNameBin = "c:\ABC"   myNewSheet.SaveAs Filename:=FileNameBin, FileFormat:=1End Sub
HINWEIS Auch wenn Sie ein Arbeitsblatt speichern, werden alle Arbeitsblätter in der ausgewählten Arbeitsmappe gespeichert, wenn das Dateiformat auf xlWorkbookNormal oder 1gesetzt ist.

Status


Microsoft hat bestätigt, dass es sich hierbei um ein Problem bei den in diesem Artikel genannten Microsoft-Produkten handelt.