Я нашел макрос, который сохраняет вложение из электронного письма в Outlook, и в этом аспекте он работает довольно хорошо, но сохраняет его в папке "мой документ"

Я хотел бы, чтобы он сохранял его в другой папке, которая имеет совершенно другой путь, однако у меня возникают проблемы с тем, чтобы увидеть, как работает код, который делает это, и, следовательно, я не могу изменить его

Текущий путь к папке с моими документами: C:\Users\me\Documents\OLAttachments, но должен быть Y:\work_network\me\outlook-file.

Текущий код у меня есть

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

Я не очень понимаю, как работает эта линия

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

И у меня есть проблемы, чтобы адаптировать его к тому, что мне нужно.

Может ли кто-нибудь помочь с этим? большое спасибо

1 ответ1

1

В указанной строке указывается путь к специальной папке "Мои документы". Вам просто нужно заменить эту строку на:

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

и полностью удалите эту строку:

strFolderpath = strFolderpath & "\OLAttachments\"

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .