Über ein Exeldatei lasse ich eine E-Mail generieren, das funktioniert so weit auch alles mit dem hier unten angegbenen Code. Ich möchte aber gern noch in den Mail Body (Nachichtentext) den Namen der angefügten Datei mit einbinden.
Im Nachichtentext wäre das z.B. nach "hier die Liste: Test.xls"
Outlook bitte vorher öffnen wenn dieser Code ausgeführt werden soll!
Sub Workbook_Senden()
Dim dNow As Date
Dim MyMessage As Object, MyOutApp As Object
Dim Qe As Integer
Dim aws As String
Dim strDatei As String
Dim MailNachricht As String 'schriftart des textes ändern
'hier die Text-Eigenschaften festlegen
MailNachricht = "" & _
"Sehr geehrte Hr. Mustermann,
hier die Liste:
Mit freundlichen Grüßen"
If Weekday(Date, 1) > 6 Then
'outlook_oeffnen 'Macro ausführen wenn Outlook sich wegen Benutzerrechte nicht öffnet!
'An dieser Stelle wird die Datei festgelegt,
With Application.FileDialog(msoFileDialogFilePicker)
.InitialFileName = "C:\"
.Title = "Bitte die zu sendende Datei auswählen!"
.ButtonName = "per E-Mail senden"
.InitialView = msoFileDialogViewDetails
.AllowMultiSelect = True 'mehrere Dateien auswählen
If .Show = -1 Then
strDatei = .SelectedItems(1)
Else
Unload UFAnleitung_EMail_Versand
MsgBox "Es wurde keine Datei ausgewählt. Der Vorgang wird abgebrochen!"
Exit Sub
End If
End With
aws = strDatei
'If aws "false" Then
Application.ScreenUpdating = False
'Outlook Object erstellen
Set MyOutApp = CreateObject("Outlook.Application")
'Outlook Nachricht erstellen
Set MyMessage = MyOutApp.CreateItem(0)
With MyMessage
.To = "Test@gmx.de" '"Hier E-Mailadresse eintragen"
.Subject = "List zum Zeitpunkt: " & Date & " " & Time
.HTMLBody = MailNachricht 'Nachichtenformat in "Nur-Text" ändern, um Anlage im Body _
einzufügen
.ReadReceiptRequested = False 'Keine Lesebestätigung
.Attachments.Add aws 'die geöffnete Datei wird versendet
On Error GoTo Fehler 'wenn Fehler auftritt dann msgbox anzeigen
'Mail erst anzeigen
.Display
'Hier wird die Mail gleich in den Postausgang gelegt und gesendet
'.Send
End With
'Outlook schliessen
'MyOutApp.Quit
'Variablen leeren
Set MyOutApp = Nothing
Set MyMessage = Nothing
Exit Sub
Fehler:
MsgBox "Der Vorgang wurde abgebrochen!"
Application.ScreenUpdating = True
Else 'für die Sperrung des Button
'Unload UFAnleitung_EMail_Versand
MsgBox "Der Mailversand ist nur zu einer bestimmten Zeit möglich!" & Chr(13) & _
"" & Chr(13) & _
" Der Vorgang wird jetzt abgebrochen!"
Exit Sub
End If
End Sub
Gibt es da eine Möglichkeit? Eine Beispieldatei würde mir vielleicht auch schon helfen.Danke, vorab für eingehende Hilfe.