Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Outlook: Automatisierte Mailweiterleitung an Empfänger aus Betreff

Frage Entwicklung VB for Applications

Mitglied: MichiMuc

MichiMuc (Level 1) - Jetzt verbinden

17.01.2007, aktualisiert 26.01.2007, 10518 Aufrufe, 11 Kommentare

Email-Weiterleitung an einen Empfänger, dessen Adresse im Betreff steht

Hallo zusammen,

ich nutze Outlook 2000 mit einem Exchange-Server. Mein PC läuft ständig. Ich benötige nun ein Makro, das eingehende Emails auf einen bestimmten Betreff überprüft und dann die Email an einen Empfänger weiterleitet, dessen Email-Adresse im Betreff steht.

Beispiel:
Mein Outlook erhält eine Email von Absender@absender.de.
Betreff: W: Endnutzer@endnutzer.de

Mein Outlook soll nun diesen Betreff auswerten und dann an Endnutzer@endnutzer.de weiterleiten.

Vielen Dank,
Michael Fieber.
Mitglied: Desperado
20.01.2007 um 09:54 Uhr
Private Sub MailWeiterleiten()

Dim objOut As Outlook.Application
Set objOut = New Outlook.Application

Dim objNameSpace
Set objNameSpace = GetNamespace("MAPI")
Dim objMailFolder As Outlook.MAPIFolder
Set objMailFolder = objNameSpace.GetDefaultFolder(olFolderInbox)
Dim objEmail As Outlook.MailItem
Dim objRec As String


For i = 1 To objMailFolder.Items.Count
Set objEmail = objMailFolder.Items.Item(i)
Set myForward = objEmail.Forward
objRec = objEmail.Subject
myForward.Recipients.Add objRec
myForward.Send
Next i

End Sub

Grüsse, Desperado
Bitte warten ..
Mitglied: MichiMuc
20.01.2007 um 10:09 Uhr
Hallo Desperado,
vielen Dank, ich werd´s am Montag gleich testen. Super!
Danke nochmal,
Michi.
Bitte warten ..
Mitglied: MichiMuc
22.01.2007 um 08:27 Uhr
Hallo Desperado,

es tritt leider folgender Fehler auf:

Laufzeitfehler: '2147467259 (80004005)
Outlook kennt mindestens einen Namen nicht.

Kannst Du damit etwas anfangen?
Michi.
Bitte warten ..
Mitglied: Desperado
22.01.2007 um 19:54 Uhr
Hi,

hm.. ich glaube mit diesen Laufzeitfehlern kann niemand etwas anfangen ;) An welcher Code-stelle tritt das denn auf? Er müsste ja per Debug zu der Zeile springen...

Grüsse, Desperado

ah moment.. wie genau heisst dein betreff? da darf in meinem codesample NUR die email-adresse stehen, ansonsten wie du oben geschrieben hast "W: Endnutzer@endnutzer.de" müsstest du noch folgende zeile ändern:

objRec = Replace(objEmail.Subject, "W: ", "")
Bitte warten ..
Mitglied: Biber
22.01.2007 um 20:13 Uhr
ich glaube mit diesen Laufzeitfehlern kann niemand etwas anfangen
Ich hab's eben nachgeschlagen...
Laufzeitfehler: '2147467259' bedeutet "Unbekannter Prefix 'W: ' vor dem Empfängernamen"

Gruß
Biber
Bitte warten ..
Mitglied: MichiMuc
23.01.2007 um 15:30 Uhr
Hallo,

ich hatte im Betreff nur die Email-Adresse eingegeben. Leider springt der Cursor im Debug-Modus nur an den Anfang des Makros. Beim Start des Makros, fragt mich Outlook, ob ich es zulassen möchte, dass eine Anwendung automatisch Daten in meinem Namen versendet. Dies beantworte ich mit ja und dann bricht es ab.

Michael Fieber.
Bitte warten ..
Mitglied: Desperado
23.01.2007 um 18:04 Uhr
hi,
poste mal deinen jetzigen code...
Bitte warten ..
Mitglied: MichiMuc
24.01.2007 um 07:24 Uhr
Guten Morgen Desperado,

es ist noch immer der gleiche Code, den Du mir anfangs geschrieben hast. Da es auch in Ordnung wäre nur die Email-Adresse in den Betreff zu schreiben, habe ich ihn nicht verändert. Hätte ich etwas angleichen müssen?

Michi.
Bitte warten ..
Mitglied: Desperado
24.01.2007 um 19:19 Uhr
hi, nein, eigentlich nicht. wenn der fehler kommt, kannst du nicht auf "debuggen" klicken? dann gehst du mit der maus über das wort objRec der Zeile

myForward.Recipients.Add objRec

ein tooltip zeigt dir dabei den wert an. ich nehme an, dass immer noch die email-adresse nicht stimmt.

hast du vielleicht noch andere emails im eingang, die KEINE email-adresse enthalten? ;) dann müsstest du ein eindeutiges kennzeichen in den betreff setzen, wie zb.:

Betreff: DoForward:email@email.com

und pro mail dann den betreff danach prüfen.


mach den code mal rein und sach mir, was in den messageboxen steht:


Private Sub MailWeiterleiten()

Dim objOut As Outlook.Application
Set objOut = New Outlook.Application

Dim objNameSpace
Set objNameSpace = GetNamespace("MAPI")
Dim objMailFolder As Outlook.MAPIFolder
Set objMailFolder = objNameSpace.GetDefaultFolder(olFolderInbox)
Dim objEmail As Outlook.MailItem
Dim objRec As String

For i = 1 To objMailFolder.Items.Count
Set objEmail = objMailFolder.Items.Item(i)
Set myForward = objEmail.Forward
objRec = objEmail.Subject
MsgBox objRec
myForward.Recipients.Add objRec

myForward.Send
Next i

End Sub
Bitte warten ..
Mitglied: MichiMuc
25.01.2007 um 07:49 Uhr
Guten Morgen Desperado,

Fehler erkannt. Ich habe in meinem Outlook zwei Postfächer. Ein persönliches und ein Postfach meiner Abteilung. Das Makro sollte für das Postfach der Abteilung laufen. Es läuft aber in meinem persönlichen. Ich habe nun mal eine Mail mit einer Email-Adresse im Betreff dort hin gelegt. Und es funktioniert. Super!
Kann man irgendwie bestimmen, für welches Postfach es laufen soll?

Danke schonmal,
Michi
Bitte warten ..
Mitglied: Desperado
26.01.2007 um 19:16 Uhr
du musst doch nur das makro entsprechend platzieren. ich habe mal ein beitrag gehabt, wie man die verschiedenen postfächer in outlook ausliest. da musst du halt checken und mit if else... arbeiten, bis du dein postfach gefunden hast und dann das makro ausführen...
Bitte warten ..
Neuester Wissensbeitrag
Festplatten, SSD, Raid

12TB written pro SSD in 2 Jahren mit RAID5 auf Hyper-VServer

Erfahrungsbericht von Lochkartenstanzer zum Thema Festplatten, SSD, Raid ...

Ähnliche Inhalte
Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (34)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...