我試圖將Outlook郵件保存爲.txt格式的系統文件夾。運行宏後,我無法看到系統文件夾中的任何文件。將outlook郵件保存到系統文件夾中的單個.txt文件中
我沒有在I:\ Documents文件夾中得到任何結果。
Sub SaveSelectedMailAsTxtFile()
Const OLTXT = 0
Dim currentExplorer As Explorer
Dim Selection As Selection
Dim oMail As Outlook.MailItem
Dim obj As Object
Dim sPath As String
Dim dtDate As Date
Dim sName As String
Set currentExplorer = Application.ActiveExplorer
Set Selection = currentExplorer.Selection
For Each obj In Selection
Set oMail = obj
sName = oMail.Subject
ReplaceCharsForFileName sName, "_"
dtDate = oMail.ReceivedTime
sName = Format(dtDate, "yyyymmdd", vbUseSystemDayOfWeek, _
vbUseSystem) & Format(dtDate, "-hhnnss", _
vbUseSystemDayOfWeek, vbUseSystem) & "-" & sName & ".txt"
oMail.SaveAs "I:\Documents" & sName & ".txt", OLTXT
Next
End Sub
Private Sub ReplaceCharsForFileName(sName As String, sChr As String)
sName = Replace(sName, "/", sChr)
sName = Replace(sName, "\", sChr)
sName = Replace(sName, ":", sChr)
sName = Replace(sName, "?", sChr)
sName = Replace(sName, Chr(34), sChr)
sName = Replace(sName, "<", sChr)
sName = Replace(sName, ">", sChr)
sName = Replace(sName, "|", sChr)
End Sub
「我沒有得到任何結果」不是問題描述。你在其他地方獲得「成果」嗎?你是否收到錯誤信息或異常?如果你在'oMail.SaveAs'行設置了一個斷點,然後在運行之前檢查'sName'的值,會發生什麼?你在那個時候在'sName'中看到了什麼?它是你期望的名字和位置嗎? –
是的,我可以看到我期望的名稱和位置,但它沒有在我的目的地保存任何數據。 – user3668427