Ich versende eine Excel Tabelle mit untenstehendem Code.
Der Befehl Mail.Send
scheint unvollkommen zu sein, denn gemäss Fehlermeldung muss noch ein Objekt angegeben werden.
Der Makro stoppt, wenn ich das Mail, bereit zum Versand, am Bildschirm sehe. In welcher Form muss das Objekt - also das Mail, das versendet werden soll - angegeben werden?
Danke für Feedback.
Peter
Sub Excel_Sheet_via_Outlook_Senden()
Dim Nachricht As Object, OutApp As Object
Dim SavePath As String
Dim AWS As String
SavePath = "H:\Datentransfer"
Set OutApp = CreateObject("Outlook.Application")
'Kopiert aktuelles Sheet in eine neue Mappe
'welche nur diese Tabelle enthält
ActiveSheet.Copy
'Speichert die Datei unter dem Tabellennamen (und dem Namen in A1)
'ActiveWorkbook.SaveAs SavePath & "\" & ActiveSheet.Name & " " & ActiveSheet.Range("A1")
ActiveWorkbook.SaveAs SavePath & "\" & ActiveSheet.Name
'Aktive Arbeitsmappe wird als mail gesendet
AWS = ActiveWorkbook.FullName
'InitializeOutlook = True
Set Nachricht = OutApp.CreateItem(0)
With Nachricht
.To = "2-you@bluewin.ch"
.Subject = "Testmeldung von Excel2000 " & Date & Time
.Attachments.Add AWS
'Hier wird eine normale Text Mail erstellt
'.body = "Das ist ein Test" & vbCrLf & "Bitte ignorieren"
'Hier wird die HTML Mail erstellt
'HTMLBody = "Das ist ein Test." & vbCrLf & "Bitte ignorieren."
'Hier wird die Mail nochmals angezeigt
.Display
'Hier wird die Mail gleich in den Postausgang gelegt
Mail.Send
'datei schliessen
Close AWS
'Hier könnte die Datei wieder gelöscht werden
Kill AWS
End With
OutApp.Quit
Set OutApp = Nothing
Set Nachricht = Nothing
End Sub