Outlook-Anhang automatisch speichern

26381
user423803

Gibt es eine Windows-basierte Methode, mit der E-Mail-Anhänge automatisch aus einem Outlook 2010 auf einen Server geladen werden können? Ich erhalte täglich eine E-Mail mit einem Anhang, den ich manuell in einem Ordner auf einem Server speichere. Ich muss diesen Prozess automatisieren.

Was ich versucht habe -

Ich habe versucht, eine Regel in Outlook und ein Skript dazu zu erstellen. Es speichert jedoch nur den Anhang in meinem lokalen Ordner auf meinem PC. und es spart nur, wenn der Ausblick geöffnet ist. Ich möchte, dass es auf einem Server gespeichert wird und auch wenn Outlook nicht auf dem Server geöffnet ist. Hier ist das Skript, das ich in Outlook gespeichert habe

Public Sub saveAttachtoDisk(itm As Outlook.MailItem)  Dim objAtt As Outlook.Attachment  Dim saveFolder As String  saveFolder = "D:\newfolder"  For Each objAtt In itm.Attachments  If InStr(objAtt.DisplayName, ".xls") Then  objAtt.SaveAsFile saveFolder & "\" & objAtt.DisplayName  End If  Set objAtt = Nothing  Next  End Sub  
3
Was ist, wenn Sie das Makro auf etwas wie "savefolder =" / server / path / to "ausrichten - trifft es dann auf den Server? Oder möchten Sie über ein Webinterface wie Sharepoint hochladen? Raystafarian vor 9 Jahren 0

2 Antworten auf die Frage

2
Sun

Das Ausführen von VBA ist nur eine clientseitige Operation. Dies bedeutet, dass Ihr PC eingeschaltet sein muss und Outlook mit aktiviertem Scripting ausgeführt werden muss. Wenn Sie nicht über Outlook verfügen, ist das, was Sie möchten, nicht möglich. Vielleicht gibt es eine serverseitige Lösung, aber dies ist eine Frage für serverfault.com

Wenn Sie Anhänge für bestimmte E-Mails verarbeiten möchten, verwende ich dies. Es funktioniert perfekt für mich in Outlook 2013:

Public Sub saveAttachtoDisk(itm As Outlook.MailItem) Dim objAtt As Outlook.Attachment Dim saveFolder As String saveFolder = "c:\temp" For Each objAtt In itm.Attachments objAtt.SaveAsFile saveFolder & "\" & objAtt.DisplayName Set objAtt = Nothing Next End Sub 

Der letzte Teil der Regel besteht darin, ein Skript auszuführen.

Für andere Benutzer, die mit Outlook VBA nicht vertraut sind, müssen Sie das Entwickler-Menüband aufrufen.

Fügen Sie den obigen Code ein, speichern Sie die VBA und verweisen Sie darauf in Ihrer Regel.

1
CharlieRB

Wenn Ihr Outlook-Konto POP3 oder IMAP ist, können Sie keine Makros oder Regeln ausführen, während Ihr Client geschlossen ist, da Sie Ihr Ereignis nur über eingehende Nachrichten auslösen können.

Wenn Sie Outlook unter Exchange ausführen, müssen Sie auf dem Server eine Regel für Ihr Konto erstellen, um Anlagen zu speichern, bevor sie an Ihren Posteingang übermittelt werden. Die Regel benötigt die UNC-Adresse ( \\server\foldernicht eine lokal zugeordnete Laufwerksadresse ( D:\folder)), die der Server nicht erkennt.

Beachten Sie, dass Ihr Netzwerkadministrator möglicherweise aus Sicherheitsgründen serverseitige Regeln deaktiviert hat. Sie sollten sich an sie wenden, um sicherzustellen, dass Sie dazu in der Lage sind.

Zusätzliche Informationen: Client-seitige und serverseitige Regeln