heute habe ich wieder eine Spezialfrage, zu der ich seit Stunden einfach keine Lösung finde.
Und zwar muss ich täglich eine xlsm-Datei per Mail an viele Empfänger versenden (Empfänger lesen Großteils nur noch; Bearbeitung höchstens für Diagramme). Einige Empfänger können keine Dateien mit Makros öffnen und benötigen die Datei als xlsx.
Nach vielen Versuchen habe ich im Internet einen Code gefunden, der fast funktioniert (es funktioniert fast alles, nur die Datei lässt sich aufgrund des Versandformates "xlsx" bei ursprünglich "xlsm") nicht öffnen. Wenn ich im Code wie ursprünglich "xlsm" einschreibe, funktionierts.... nur dann das Problem auf der Empfängerseit.
Frage: kann ich in den Code irgendetwas einfügen (automatisches Konvertieren im Versand?) um diese "Ecke" zu lösen? Wichtig: die Ursprungsdatei muss xlsm bleiben.
verwendeter Code unterbei
Für eine Hilfe wäre ich sehr dankbar!
Lg, Martina
Sub MappeViaOutlookSenden()
Const AN$ = "max.mustermann@gmx.at"
Const BETREFF$ = "Testdatei"
Const TEXT$ = "Im Anhang die aktuellen Untersuchungsergebnisse."
Const TYP$ = ".xlsx"
Const SEP$ = "_"
Dim WbQ As Workbook: Set WbQ = ThisWorkbook
Dim Ol As Object, Eml As Object
Dim Suf$, Pfad$, Anhang$
Pfad = WbQ.Path & "\"
Suf = Application.InputBox("Dateinamen-Zusatz eingeben:", _
"Dateiname Email-Anhang ", , , , , , 2 + 4)
Select Case Suf
Case Is = vbNullString: Exit Sub
Case Is = False: Exit Sub
End Select
Anhang = Pfad & Left(WbQ.Name, InStr(1, WbQ.Name, ".") - 1) & SEP & Suf & TYP
WbQ.SaveCopyAs Anhang
Set Ol = CreateObject("Outlook.Application")
Set Eml = Ol.CreateItem(0)
With Eml
.To = AN
.Subject = BETREFF & " " & Date
.Attachments.Add Anhang
.Body = ANREDE & vbLf & vbLf & TEXT & vbLf & vbLf & GRUSS
.Display
End With
Kill Anhang
Set Ol = Nothing
Set Eml = Nothing
End Sub