使用VBA,我一直試圖將目錄中的所有JPG文件都附加到電子郵件中,而不知道確切的文件名。我試過這些代碼行:添加知道文件路徑但不知道文件名的附件
.Attachments.Add "C:\Desktop\Attachments\" & "*.jpg"
.Attachments.Add "C:\Desktop\Attachments\*.jpg"
.Attachments.Add "C:\Desktop\Attachments" & "\*.jpg"
這些都沒有奏效。我該怎麼做呢?
使用VBA,我一直試圖將目錄中的所有JPG文件都附加到電子郵件中,而不知道確切的文件名。我試過這些代碼行:添加知道文件路徑但不知道文件名的附件
.Attachments.Add "C:\Desktop\Attachments\" & "*.jpg"
.Attachments.Add "C:\Desktop\Attachments\*.jpg"
.Attachments.Add "C:\Desktop\Attachments" & "\*.jpg"
這些都沒有奏效。我該怎麼做呢?
您需要提供每個文檔的實際文件路徑。
https://msdn.microsoft.com/en-us/library/office/ff869553.aspx
我認爲你可以得到這樣每個文件路徑:
Dim fileName as String
fileName = Dir("C:\Desktop\Attachments\*.jpg")
Do While Len(fileName) > 0
.Attachments.Add "C:\Desktop\Attachments\" & fileName
fileName = Dir
Loop
嘗試像下面
Set fso = CreateObject("Scripting.FileSystemObject")
For Each fsoFile In fso.GetFolder("C:\Desktop\Attachments").Files
If fso.GetExtensionName(fsoFile) = "jpg" Then
.Attachments.Add fsoFile.Path
End If
Next
非常感謝 – Summer
迪爾()只返回文件名*,不完整的路徑。如果'C:\ Desktop \ Attachments \'不是當前目錄 –
,代碼將失敗謝謝Tim。我更新了我的答案,將文件名添加到目錄路徑。 – Justin
我必須首先將字符串的文件名作爲字符串嗎? – Summer