VBA Outlook alle Anhänge automatisch öffnen

Hallo,

eigentlich kann es nicht so schwierig sein - aber bei Google und in den einschlägigen Foren hab ich trotzdem nichts gefunden. Ich brauche ein Makro, dass mir einfach alle Emailanhänge eines Email öffnet. Im konkreten Fall sind es immer Word-Dokumente, die ich öffnen will.

In Word soll es eigentlich gleich mit einem Makro weitergehen, das ich dort in einer Autostart-Formatvorlage eingebunden habe. Zuerst wäre mir aber wichtig, dass alle Anhänge aufgehen.

Vielleicht hat von euch ja jemand eine einfache Lösung.

Grüße

Stefan

eigentlich kann es nicht so schwierig sein - aber bei Google
und in den einschlägigen Foren hab ich trotzdem nichts
gefunden. Ich brauche ein Makro, dass mir einfach alle
Emailanhänge eines Email öffnet. Im konkreten Fall sind es
immer Word-Dokumente, die ich öffnen will.

Hi Stefan,

im Zusammenspiel Word und Outlook gibt es doch nur zwei wichtige Dinge, einaml mittels Word-Vba eine Mail versenden, oder eine empfangene Mail einlesen samt Anhängen.
Insofern ist mir unklar warum man da nichts findet.

Benutze mal bei der Suche auch das Wort +MAPI, und/oder auch CreateObject, GetObject, Outlook.Application
Und, wenn dein Englisch einigermaßen ist, google mal im englischsprachigen Raum.

In Outlook-Vba-Foren hast du auch schon gesucht?

Gruß
Reinhard

Hallo Stefan,

eigentlich kann es nicht so schwierig sein - aber bei Google
und in den einschlägigen Foren hab ich trotzdem nichts
gefunden. Ich brauche ein Makro, dass mir einfach alle
Emailanhänge eines Email öffnet.

Genau diese Idee hatte Microsoft auch, als Outlook entwickelt wurde. Dazu wurde dann extra noch HTML erweitert.
Es gab da ein paar tolle Demos, was man so alles automatisch mit eine E-Mail machen kann …

Und dann kamen die bösen Buben. Mit ein paar Änderungen wurde dann einfach automatisch die ganze Festplatte gelöscht …

Also sei Vorsichtig, wenn du solche Dinge automatisierst.

MfG Peter(TOO)

Hallo Peter,

danke für den Hinweis. „Automatisch“ meine ich aber nur insoweit, als dass ich nach Prüfung der Email einen Button drücke und dann alle Anhänge aufgehen. Bei „Viagra“-Emails würde ich das natürlich nicht tun. Abgesehen davon ist unsere Firmen-Firewall wirklich so stark eingestellt, dass tatsächlich nur sichere Dateien durchkommen. Alle Anhänge mit Skripten, Makros etc. werden immer geblockt.

Für mich sind auch nur interne Emails wichtig, bei denen mehrere Word-Dokumente mit dranhängen. Statt alle einzeln durchklicken zu müssen brauche ich einfach eine kleine Funktion um alle gleichzeitig zu öffnen…

Mfg

Stefan

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Reinhard,

also das Schlagwort „MAPI“ war schonmal gut. Vorher hab ich immer nach „Outlook, VBA, Anhang, öffnen“ gesucht und vorwiegend irgendwelche Warnseiten wg. Makroviren bekommen. Jetzt gehen die Treffer schon eher in die gewünschte Richtung. Trotzdem hab ich vor allem Beiträge gefunden, in denen es um das Speichern der Anhänge geht.

Den Code a la

.Attachments.Item(i).SaveAsFile

kann ich aber schon. Ich hab auch schon in der Outlook-Hilfe gesucht, aber

.Attachments.Item(i).Open

o.ä. gibt es nicht. Eine Lösung hab ich gefunden, bei der ein User einfach die Dateien zwischenspeichert. Nachdem ich in Word mit einem anderen Makro eh speichere wäre das für mich eher umständlich.

Wenn du grad nen Link zu einer Seite greifbar hast, auf der erklärt wird, wie man die Anhänge einfach nur öffnet, dann wär ich dankbar. Leider hab ich trotz längerer Suche (auch in englisch) nichts rechtes gefunden…

Grüße aus der Oktoberfest-Stadt

Stefan

Hi Stefan,

im Zusammenspiel Word und Outlook gibt es doch nur zwei
wichtige Dinge, einaml mittels Word-Vba eine Mail versenden,
oder eine empfangene Mail einlesen samt Anhängen.
Insofern ist mir unklar warum man da nichts findet.

Benutze mal bei der Suche auch das Wort +MAPI, und/oder auch
CreateObject, GetObject, Outlook.Application
Und, wenn dein Englisch einigermaßen ist, google mal im
englischsprachigen Raum.

In Outlook-Vba-Foren hast du auch schon gesucht?

Gruß
Reinhard

Mmm, so leicht scheint es doch nicht zu sein eine Antwort auf die Frage zu finden. Bei Google und Konsorten suche ich noch und hier hat bisher auch noch keiner den entscheidenden Link geschickt.

Unabhängig davon hätte ich noch eine Frage. Mit Outlook 2000 leite ich nach Klick auf einen Button an einen speziellen Empfänger Emails weiter. Dabei soll im Text ein Zusatz hinzugefügt werden: „Ausgedruckt am…“ o.ä.

Mein Problem ist, dass Outlook das Originalformat nicht beibehält und immer die Emails als html verschickt. Bei Emails die im Textformat gehalten waren sieht das meist nicht so gut aus.

Hier mein Code:

Set objItem = Application.ActiveExplorer.Selection(1)
If Not objItem Is Nothing Then
iEmailformat = objItem.GetInspector.EditorType
Set objForward = objItem.Forward
objForward.To = strEmailempfänger
objForward.CC = strEmailempfängerCc
strEmailzusatztext = strEmailzusatztext & vbCrLf & vbCrLf & objForward.Body
objForward.Body = strEmailzusatztext
'objForward.Display
objForward.Send
End If

Die Variable strEmailzusatztext hab ich vorher entsprechend befüllt. Im Internet bin ich schon auf die Funktion .htmlbody gestoßen, mit der man das Format der Email auf Html umschalten kann. Laut Beschreibung im Internet müßten emails mit bloß .body eigentlich im Textformat bleiben.

Kann man mit VBA prüfen lassen, was für ein Format die Ursprungsemail hatte und dann im gleichen Format weiterleiten? Als Standardformat sollte in Outlook für Emails trotzdem html eingestellt bleiben.

Grüße

Stefan

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]