Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

[VBA] .xlsm als .xlsx speichern
#1
Hallo!

Ich möchte gerne meine Excel Mappe mit Makros ohne Makros abspeichern, damit ich sie in ein CAD-Programm einspeisen kann.
Ich habe mir gedacht, dass ich eine Kopie der Mappe mit Makros erstelle, damit diese nicht verloren gehen und ich die dann aktuelle Mappe ohne Makros abspeichere.

Ich benutze folgenden Code:

Code:
Sub Speichern()

With ThisWorkbook
.SaveCopyAs "C:\Users\CAD02\Desktop\EXCEL MIT MAKROS SAVECOPYAS.xlsm"
.SaveAs "C:\Users\CAD02\Desktop\Excel_Link_TopSolid.xlsm", FileFormat:=xlOpenXMLWorkbook
'.Close
End With

'MsgBox "Gespeichert:   " & ThisWorkbook.Saved & vbCrLf & vbCrLf & "Die Excelmappe kann nun über den Excel-Link in TopSolid eingespeist werden."

End Sub

Wenn die Sub Speichern() ausgeführt wird, kommt die Nachfrage, ob ich es wirklich ohne Makros abspeichern möchte. So weit so gut.
Bestätige ich dies nun jedoch, erscheint in VBA folgende Fehlermeldung:

Laufzeitfehler '1004':
Diese Erweiterung kann nicht mit dem ausgewählten Dateityp verwendet werden.
Ändern Sie die Dateierweiterung im Textfeld 'Dateiname', oder wählen Sie einen anderen
Dateityp aus, indem Sie die Auswahl unter 'Speichern unter' ändern.

Vielleicht kann mit ja jemand helfen, bin noch ziemlich neu in VBA.

LG
Antwortento top
#2
Moin!
Nun ja:
Die Fehlermeldung beschreibt doch exakt Deinen Fauxpas. Richtig ist:

.SaveAs "C:\Users\CAD02\Desktop\Excel_Link_TopSolid", FileFormat:=xlOpenXMLWorkbook

Die Dateiendung braucht nicht angegeben zu werden, wenn das FileFormat genannt wird.

Zur Nachfrage von Excel:
Die kannst Du beruhigt mittels Application.DisplayAlerts = False ausschalten.

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
[-] Folgende(r) 1 Benutzer sagt Danke an RPP63 für diesen Beitrag:
  • hein21
Antwortento top
#3
Jetzt klappt's einwandfrei! Vielen Dank!
Antwortento top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste