2016-09-13 2 views
0
gesendet

Ich muss ein VBA-Skript als Regel in Outlook, dass starten 1. "Catch" bestimmte Mail mit Anhang (Excel) 2. speichern Sie diese Anlage als Datei und tun einige Änderungen in dieser Datei 3. per E-Mail diese "geänderte" Datei senden.Outlook VBA kann keine E-Mails als Skript an Regel

P.1 und P.2 habe ich schon gemacht, aber ich kann nicht senden und per E-Mail. Ich versuche, diesen einfachen Code in der Regel, wenn ich das Skript eine Nachricht mit bestimmten Wörtern im Betreff laufen haben:

Sub sendemail() 
Dim OutlApp As Object 
On Error Resume Next 
    Set OutlApp = GetObject(, "Outlook.Application")<---use this instance of outlook    
If Err Then 
Set OutlApp = CreateObject("Outlook.Application") 
IsCreated = True 
End If 
OutlApp.Visible = True 
On Error GoTo 0 
With OutlApp.CreateItem(0) 
.To = "[email protected]" 
.Subject = "test" 
.Display  
End With 
Set OutlApp = Nothing 
End Sub 

wenn ich als Makro ausführen (F5) in VBA-Projekt ging alles OK, Post erscheint , aber nichts passiert, wenn ich die Regel ausführe. Irgendwelche Ideen? Grüße,

Antwort

0

Die erste Zeile des Laufs ein Skript-Code muss so aussehen.

Sub name(itm as mailItem) 

oder

Sub name(itm as meetingItem) 

"itm" ist die Post oder die Sitzung empfangen wird.

In Ihrem Fall müssen Sie bereits ein anderes Sub haben, wo Sie es erhalten und P1 und P2 tun. Jetzt würden Sie den Sendemail-Code nach P2 aufrufen.

Sub P1_P2_sendemail(itm As mailItem) 

' P1 
' P2 

With CreateItem(0) 
    .To = "[email protected]" 
    .Subject = "test" 
    .Display 
End With 

End Sub