Scriptlösung für Outlook 2007
Hallo zusammen
meine erste Frage an die VB-Spezis hier
In Outlook 2007 soll eine Aktion/Script verwendet werden, das bei verkauften Ebay-Auktionen den Mailempfänger rausliest
Mail wird immer mit "Herzlichen Glückwunsch, Ihr Artikel wurde verkauft" rausgesucht
Die Mail-Adresse steht immer vor dem String "[ Kontakt mit Käufer aufnehmen]"
und den Käufern eine immer gleiche PDF-Datei im Anhang zumailt.
Kann man das in VB oder so hinbekommen?
Danke für eure Tipps
jojo
meine erste Frage an die VB-Spezis hier
In Outlook 2007 soll eine Aktion/Script verwendet werden, das bei verkauften Ebay-Auktionen den Mailempfänger rausliest
Mail wird immer mit "Herzlichen Glückwunsch, Ihr Artikel wurde verkauft" rausgesucht
Die Mail-Adresse steht immer vor dem String "[ Kontakt mit Käufer aufnehmen]"
und den Käufern eine immer gleiche PDF-Datei im Anhang zumailt.
Kann man das in VB oder so hinbekommen?
Danke für eure Tipps
jojo
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 116518
Url: https://administrator.de/forum/scriptloesung-fuer-outlook-2007-116518.html
Ausgedruckt am: 03.04.2025 um 22:04 Uhr
2 Kommentare
Neuester Kommentar
Hallo jojo,
geht kein Problem solange eBay nicht Ihre Mails anders formatiert, dann sind wieder Anpassungen nötig.
Wenn du die Mails HTML-formatiert bekommst dann funktioniert unten stehendes Script, welches du im Outlook VBA Editor im Modul "ThisOutlookSession" einfügst.
Da der Mailbody ja HTML ist sucht das script nach dem ersten "mailto:" im Body.
Wenn du nun eine solche Mail im Posteingang hast , dann findet es diese, extrahiert die eMail und erstellt eine neue mit dieser als Empfänger. Das ganze sollte natürlich erweitert werden damit nach extrahieren und verschicken der Mail dieselbige in einen anderen Ordner verschoben wird damit bei einem erneuten durchlauf des Scripts der Empfänger nicht gleich noch eine Mail erhält.
Wenn du damit nicht zurecht kommen solltest kann ich dir eine individuelle Abfolge erstellen...
Das ganze kann man auch an das NewMail-Ereignis von Outlook hängen, so daß es jedes mal beim eintreffen neuer Nachrichten ausgeführt wird.
den Code zum Anhängen eines PDF's habe ich auch schon eingefügt aber noch auskommentiert damit du den Pfad zum PDF noch anpassen kannst und das Script beim Testen nicht hängenbleibt.
Bei Fragen stehe ich gerne Rede und Antwort

Grüße Uwe
geht kein Problem solange eBay nicht Ihre Mails anders formatiert, dann sind wieder Anpassungen nötig.
Wenn du die Mails HTML-formatiert bekommst dann funktioniert unten stehendes Script, welches du im Outlook VBA Editor im Modul "ThisOutlookSession" einfügst.
Da der Mailbody ja HTML ist sucht das script nach dem ersten "mailto:" im Body.
Wenn du nun eine solche Mail im Posteingang hast , dann findet es diese, extrahiert die eMail und erstellt eine neue mit dieser als Empfänger. Das ganze sollte natürlich erweitert werden damit nach extrahieren und verschicken der Mail dieselbige in einen anderen Ordner verschoben wird damit bei einem erneuten durchlauf des Scripts der Empfänger nicht gleich noch eine Mail erhält.
Wenn du damit nicht zurecht kommen solltest kann ich dir eine individuelle Abfolge erstellen...
Das ganze kann man auch an das NewMail-Ereignis von Outlook hängen, so daß es jedes mal beim eintreffen neuer Nachrichten ausgeführt wird.
den Code zum Anhängen eines PDF's habe ich auch schon eingefügt aber noch auskommentiert damit du den Pfad zum PDF noch anpassen kannst und das Script beim Testen nicht hängenbleibt.
Sub ebayScript()
Dim mail As Outlook.MailItem
Dim inbox As Outlook.Folder
str_subject_search = "Herzlichen Glückwunsch, Ihr Artikel"
str_body_search = "mailto:"
Set inbox = Application.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox)
For Each mail In inbox.Items
If mail.Class = olMail Then
If Left(mail.Subject, Len(str_subject_search)) = str_subject_search Then
mailbody = CStr(mail.Body)
pos_start = InStr(1, mailbody, str_body_search, vbTextCompare) + 7
pos_mail_end = InStr(pos_start, mailbody, Chr(34), vbTextCompare)
string_mail = Trim(Mid(mailbody, pos_start, pos_mail_end - pos_start))
Dim newmail As MailItem
Set newmail = Application.CreateItem(olMailItem)
With newmail
.Subject = "Antwort auf Kauf"
.To = string_mail
.Display
'Set Attachments = .Attachments
'Attachments.Add ("c:\beispiel.pdf")
.Display
End With
End If
End If
Next
End Sub
Bei Fragen stehe ich gerne Rede und Antwort
Grüße Uwe