Outlook-VBA-Anhang auf der Festplatte in einem bestimmten Ordner speichern, der sich von dem Ordner "Meine Dokumente" unterscheidet

4454
ploom

Ich habe ein Makro gefunden, das einen Anhang aus einer E-Mail in Outlook speichert, und in diesem Aspekt funktioniert es ziemlich gut, speichert es jedoch im Ordner "Mein Dokument"

Ich möchte, dass es in einem anderen Ordner gespeichert wird, der einen völlig anderen Pfad hat, jedoch habe ich Schwierigkeiten zu sehen, wie der Code funktioniert, der das tut, und daher gelingt es mir nicht, ihn zu ändern

Der aktuelle Pfad für meinen Dokumentenordner lautet C: \ Users \ me \ Documents \ OLAttachments. Er sollte jedoch Y: \ work_network \ me \ outlook-file sein

Der aktuelle Code, den ich habe, ist

Public Sub SaveAttachments()  Dim objOL As Outlook.Application Dim objMsg As Outlook.MailItem 'Object Dim objAttachments As Outlook.Attachments Dim objSelection As Outlook.Selection Dim i As Long Dim lngCount As Long Dim strFile As String Dim strFolderpath As String Dim strDeletedFiles As String  ' Get the path to your My Documents folder strFolderpath = CreateObject("WScript.Shell").SpecialFolders(16) On Error Resume Next  ' Instantiate an Outlook Application object. Set objOL = CreateObject("Outlook.Application")  ' Get the collection of selected objects. Set objSelection = objOL.ActiveExplorer.Selection  ' Set the Attachment folder. strFolderpath = strFolderpath & "\OLAttachments\"  ' Check each selected item for attachments. For Each objMsg In objSelection  Set objAttachments = objMsg.Attachments lngCount = objAttachments.Count  If lngCount > 0 Then For i = lngCount To 1 Step -1  ' Get the file name. strFile = Left(objAttachments.Item(i).FileName, Len(stry) - 4) & Format(Date, "DDMMYY") & ".xls"  ' Combine with the path to the Temp folder. strFile = strFolderpath & strFile  ' Save the attachment as a file. objAttachments.Item(i).SaveAsFile strFile  Next i End If  Next  ExitSub:  Set objAttachments = Nothing Set objMsg = Nothing Set objSelection = Nothing Set objOL = Nothing End Sub 

Ich verstehe nicht wirklich, wie diese Linie funktioniert

strFolderpath = CreateObject("WScript.Shell").SpecialFolders(16) 

Und ich habe Schwierigkeiten, es an das anzupassen, was ich brauche.

Kann mir jemand Hilfe geben? Danke vielmals

0
Nun, Sie haben ein Makro gefunden. Was hast du versucht zu ändern? Wie hat es nicht funktioniert? Was hat es gemacht? Was wolltest du damit machen? Raystafarian vor 7 Jahren 0
Änderung ist 'Legen Sie den Ordner Anlage fest. strFolderpath = strFolderpath & "\ OLAttachments \" wechselt zu strFolderpath = "Y: \ work_network \ me \ outlook-file" bvaughn vor 7 Jahren 0
Nun, ich habe smtg wie strFolderpath = CreateObject ("WScript.Shell"). GetFolderPath ("Y: \ work_network \ me \ outlook-file") und direkt strFolderpath = "Y: \ work_network \ me \ outlook-file" versucht hat nicht funktioniert Ich bin nicht sehr erfahren mit VBA, deshalb habe ich nach einem vorab geschriebenen Code gesucht. Haha Nun, ich wollte nur den endgültigen Ordner ändern, in dem mein Anhang gespeichert ist, aber ich weiß nicht, wie ich das CreateObject ("WScript.Shell") manipulieren soll. ) Struktur Vielleicht sollte der Pfad eine ganz andere Richtung haben, aber ich weiß nicht, wie ich das machen soll ploom vor 7 Jahren 0
1 - Setzen Sie die Option Explicit ganz oben in Ihren Code. Es gibt eine Einstellung in der Registerkarte Extras | Optionen | Editor "Variablendeklaration erforderlich". 2 - Sie können nicht debuggen, wenn "On Error Resume Next" ohne Unterschied verwendet wird. Entfernen Sie es. Jede dieser beiden Aktionen hätte ergeben, dass die Variable stry unbekannt ist. Die Antwort von thims sollte die richtige Antwort auf Ihre Frage sein. niton vor 7 Jahren 0

1 Antwort auf die Frage

1
thims

Die angegebene Zeile enthält den Pfad für den Ordner "Eigene Dateien". Sie müssen diese Zeile nur durch Folgendes ersetzen:

strFolderpath = "Y:\work_network\me\outlook-file\" 

und entferne diese Zeile vollständig:

strFolderpath = strFolderpath & "\OLAttachments\" 
Ich habe es ausprobiert, aber es funktioniert nicht Ich sehe nichts in meinem Ordner und habe auch keine Fehlermeldung msg: / ploom vor 7 Jahren 0
Wenn es mit "Eigene Dateien" funktioniert, muss es mit diesem Pfad arbeiten. Versuchen Sie, Ihr Skript zu debuggen. thims vor 7 Jahren 0