2015-05-01 58 views
1

使用VBA,我一直試圖將目錄中的所有JPG文件都附加到電子郵件中,而不知道確切的文件名。我試過這些代碼行:添加知道文件路徑但不知道文件名的附件

.Attachments.Add "C:\Desktop\Attachments\" & "*.jpg" 
.Attachments.Add "C:\Desktop\Attachments\*.jpg" 
.Attachments.Add "C:\Desktop\Attachments" & "\*.jpg" 

這些都沒有奏效。我該怎麼做呢?

回答

1

您需要提供每個文檔的實際文件路徑。

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 
+1

迪爾()只返回文件名*,不完整的路徑。如果'C:\ Desktop \ Attachments \'不是當前目錄 –

+0

,代碼將失敗謝謝Tim。我更新了我的答案,將文件名添加到目錄路徑。 – Justin

+1

我必須首先將字符串的文件名作爲字符串嗎? – Summer

3

嘗試像下面

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 
+0

非常感謝 – Summer

相關問題