Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1192to1196
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

email mit Anhang aus VBA (Windows Mail)

email mit Anhang aus VBA (Windows Mail)
Anne
Hallo,
ich möchte über VBA eine email (Windows Mail) vorbereiten, die sowohl einen Betreff, Text und einen Anhang enthält.
Leider bekommen ich entweder die vorbereitete Mail, oder eine leere Mail mit dem gewünschten Anhang. Hierfür habe ich folgende Codes im Formu gefunden:
Vorbereitete Email mit Windows Mail öffnen :
Private Declare Function ShellExecute Lib "Shell32.dll" _
Alias "ShellExecuteA" (ByVal hWnd As Long, _
ByVal lpOperation As String, ByVal lpFile As String, _
ByVal lpParameters As String, ByVal lpDirectory As String, _
ByVal nShowCmd As Long) As Long
Private Sub Mail(sAdr As String, Optional sSub As String, _
Optional sBody As String)
Call ShellExecute(0&, "Open", "mailto:" + sAdr + _
"?Subject=" + sSub + "&Body=" + sBody, "" , "", 1)
End Sub

Sub MailVersenden()
Dim sAddress As String, sSubject As String, sTxt As String, sAttach As String
sAddress = ""
sSubject = "Angebot"
sTxt = "Sehr geehrte Damen und Herren," & "%0D%0A" & "%0D%0A" & _
"Text" & "%0D%0A" & "%0D%0A" & "%0D%0A" & _
"Mit freundlichen Grüßen" & "%0D%0A" & "%0D%0A" & _
"Absender"
Call Mail(sAddress, sSubject, sTxt)
End Sub
Email mit Anhang mit Windows Mail öffnen:
Sub emailmitAnhang()
Application.CommandBars.ExecuteMso "FileEmailAsPdfEmailAttachment"
End Sub Bekomme ich da auch irgendwie zusammen?
Vielen Dank für Eure Hilfe!!!!
Gruß
Anne

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: email mit Anhang aus VBA (Windows Mail)
10.01.2011 01:04:15
Nepumuk
Hallo,
kannst du aus Excel selbst heraus (Officebutton - Senden - Email) so ein Mail generieren (nur mit Anhang) welches dann über Windows-Mail versand wird? Ich kann das nicht testen, da bei mir Outllok aufgeht.
Gruß
Nepumuk
Nicht mit Windows-Mail
10.01.2011 03:50:05
mumpel
Hallo!
Leider gibt es für Dein Problem keine Lösung. Es gibt nur sehr wenig Emailprogramme die sich aus VBA heraus steuern lassen (Outlook, Lotus Notes, david.fix, GroupWise). Nicht dazu gehören Thunderbird, Windows Mail undOutlook Express.
Dir wird nichts weiter übrig bleiben als den Standardweg zu gehen oder Outlook zu erwerben.
Gruß, René
Anzeige
doch, Outook Express und LiveMail sollten gehen
10.01.2011 09:32:05
Martin
Hallo René,
mit folgendem Code wird über Outlook Express bzw. dem Nachfolger Windows (Live) Mail eine Email auch mit Anhang per Excel-VBA verschickt. Leider wird diese Email (außer beim Empfänger natürlich) nirgends angezeigt (weder im Postausgang noch unter Gesendete Objekte). Als Notlösung würde ich daher die eigene Adresse im Cc-Feld eintragen. Leider wird der Code Anne nicht weiterhelfen, da die Email ja nur "vorbereitet" werden soll.
Viele Grüße
Martin
Sub Mail_Small_Text_CDO()
Dim iMsg As Object
Dim iConf As Object
Dim strbody As String
Dim Flds As Variant
Set iMsg = CreateObject("CDO.Message")
Set iConf = CreateObject("CDO.Configuration")
iConf.Load -1    ' CDO Source Defaults
Set Flds = iConf.Fields
With Flds
'Lokal installierter SMTP-Service = Wert 1, SMTP-Service im Netzwerk = Wert 2
.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
'SMTP-Server
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.web.de"
'SMTP-Serverport (Standard: 25)
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
'Falls Server Authentifizierung fordert
'gibt den Mechanismus zur Authentifizieren am SMTP-Dienst an (0=Keine, 1=Klartext, 2=  _
current process security context)
.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
'Benutzername
.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "benutzername"
'Kennwort
.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "passwort"
'Nutzung von SSL (False or True)
'.Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = False
'Connection Timeout in Sekunden (maximale Zeit die CDO versucht den Server zu erreichen)
'.Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
.Update
End With
With iMsg
Set .Configuration = iConf
.To = """Name Empfaenger"" "
.Cc = ""
.Bcc = "meinname@domain.de"
'.ReplyTo = "antwort@domain.de" 'ANTWORTADRESSE
.From = """Vorname Nachname"" "
.Subject = "Betreff meiner Email"
'Nur Text
.TextBody = "Hier steht der Text meiner Email"
'HTML-Seite aus Internet
'.CreateMHTMLBody "http://www.domain.de/email.html"
'Lokale HTML-Seite
'.CreateMHTMLBody "file://C:/Dokumente und Einstellungen/User Name/Desktop/startseite.htm"
'.AddAttachment "c:\asmruntime.log" 'Anhang
'Dringlichkeit (zeigt Outlook nur unter Eigenschaften an)
'.Fields("urn:schemas:httpmail:importance") = 2 ' 0=low, 1=normal, 2=high
'.Fields.Update
'Priorität (zeigt Outlook deutlich an)
'.Fields("urn:schemas:mailheader:X-Priority") = 1 ' 1=hoch 3 = normal, 5 = niedrig
'.Fields.Update
'Lesebestätigung anfordern mit Antwortadresse
'.Fields("urn:schemas:mailheader:return-receipt-to") = "name@domain.de"
'.Fields("urn:schemas:mailheader:disposition-notification-to") = "name@domain.de"
'.Fields.Update
.Send
End With

Anzeige
AW: email mit Anhang aus VBA (Windows Mail)
10.01.2011 07:26:53
Anne
Hallo Nepomuk,
ich will die email nicht direkt versenden, sondern nur vorbereiten. Wenn ein Fenster aufgeht, in dem die vorbereitete email mit dem Anhang erscheint, reicht mir das aus. In meinem Fall ist die email-Adresse nicht in excel vorhanden, so dass diese manuell erfasst werden muss. Das funktioniert mit dem angegeenen Code.
Gruß
Anne
AW: email mit Anhang aus VBA (Windows Mail)
10.01.2011 15:02:31
mumpel
Eine Alternative wäre Mail the whole workbook With SendMail (Example 2) von Ron DeBruin.
Hat allerdings Nachteile.: Es ist kein Emailtext möglich, die nervende Meldung "Ein Programm versucht..." erscheint (auch wenn sie deaktiviert wurde) und die Email wird nicht angezeigt sondern im Postausgang geparkt.
Anzeige
AW: email mit Anhang aus VBA (Windows Mail)
10.01.2011 16:58:54
Anne
Hallo,
vielen Dank für Eure Hilfe, theoretisch könnte ich mir ja mit dem gelieferten Code eine mail schicken, diese weiterbearbeiten und dann erst an den korrekten Empfänger weiterleiten.
Ich teste mal, ob sich das in der Praxis bewährt.
Gruß
Anne

308 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige