2k Aufrufe
Gefragt in Tabellenkalkulation von jonesm Mitglied (191 Punkte)
Hallo,

über einen CommandButton speichere ich eine Datei und verschicke diese an einen Mailverteiler. Die Datei als Vorlage enthält logischerweise Makros, welche ich vor dem senden löschen möchte. Wie muss der Code hierfür aussehen?


'Button für Mail zu senden
Private Sub CommandButton1_Click()
Application.DisplayAlerts = false

' Hier wird die Datei mit Makros mit Inhalten aus der Datei gespeichert
ActiveWorkbook.SaveAs Filename:="c:\temp\Meldung " & " - " & ActiveWorkbook.ActiveSheet.Range("g10") & " - " & ActiveWorkbook.ActiveSheet.Range("o27") & ".xlsm"

'Hier sollen ohne Makros gespeichert werden
ActiveWorkbook.SaveAs Filename:="c:\temp\test.xls", FileFormat:=xlNormal

'Hier wird die Datei als Mail verschickt
Application.Dialogs(xlDialogSendMail).Show _
arg1:=ActiveWorkbook.ActiveSheet.Range("u120:c150"), _
arg2:="Besuchsanmeldung " & ActiveWorkbook.ActiveSheet.Range("g10") & " für " & ActiveWorkbook.ActiveSheet.Range("j27") & " " & ActiveWorkbook.ActiveSheet.Range("o27") & " - " & ActiveWorkbook.ActiveSheet.Range("af27")

End Sub


Wäre super, wenn jemand einen Hinweis für mich hat.

Viele Grüße
Thomas

4 Antworten

0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
Hallo Thomas,

speichere die Datei als XLSX.

Gruß hajo
0 Punkte
Beantwortet von jonesm Mitglied (191 Punkte)
Hallo Hajo,

vielen Dank für deine schnelle Antwort.
Ich bekomme als Fehlermeldung, dass die Dateiendung nicht dem Format entspricht und die DAtei kann nicht geöffnet werden.
Der code sieht so aus.

ActiveWorkbook.SaveAs Filename:="c:\temp\test.xlsx", FileFormat:=xlNormal


Noch eine Idee?

Vielen Dank & Grüße
Thomas
0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
FileFormat:=xlNormal ist auch nicht XLSX,. Benutze den Makrorecorder.

Gruß hajo
0 Punkte
Beantwortet von jonesm Mitglied (191 Punkte)
Jeppp,
Vielen Dank!

Problem gelöst.
...