【发布时间】:2017-12-07 19:18:59
【问题描述】:
从上个月以来存在的收件箱的子文件夹中查找所有电子邮件(按文件夹名称,即电子邮件 ID),并按主题将它们复制粘贴到相应的文件夹中。
我被困在代码 NS = OlApp.GetNamespace("MAPIFolder") 也与 ("MAPI") 以及未设置对象变量的错误正在显示
Dim OlApp As Outlook.Application
Set OlApp = New Outlook.Application
Set OlApp = CreateObject("Outlook.Application")
Dim fldrpath As String
Dim fldername As String
Dim oMail As Object
fldrpath = "\data\EMAILS\" & fldrname
Dim NS As Namespace
Dim Folder As MAPIFolder
Dim sName As String
Dim dtdate As String
Dim Inbox As MAPIFolder
NS = OlApp.GetNamespace("MAPIFolder")
Set Inbox = NS.GetDefaultFolder(olFolderInbox)
For Each mysubFolders In Inbox.subFolders
Set mysubfolder = Inbox.subFolders("PDI").Folders("OBU").Folders("DND")
For Each mailItems In mysubfolder
If oMail.Body = r Then
Set mailItems = oMail
sName = mailItems.Subject
dtdate = mailItems.ReceivedTime
Debug.Print fldrpath & sName
mailItems.SaveAs fldrpath & sName, olMSG
End If
Next
Set OlApp = Nothing
Set mailItems = Nothing
Next
End Sub
【问题讨论】:
-
应该很简单。使用代码的当前状态更新您的问题,以便我们知道从哪里开始。
-
我很高兴听到它很简单,但目前我被困在这个...请帮助。有问题的代码已更新
-
好更新!现在准确告诉我们您遇到的问题、卡住的原因以及您尝试解决的问题。
-
我卡在代码 NS = OlApp.GetNamespace("MAPI Folder") 中,给我错误作为对象变量或阻止设置
-
用 ^ 这个问题更新您的问题和标题,并将您的代码分解为问题的最小示例。