【问题标题】:Move Selected Email to Junk E-mail folder in Outlook using VBA Macro使用 VBA 宏将选定的电子邮件移动到 Outlook 中的垃圾邮件文件夹
【发布时间】:2015-02-18 21:18:41
【问题描述】:

我正在尝试创建一个子程序,当调用子程序时,它将简单地将任何当前选定的邮件移动到 Outlook 中的默认垃圾文件夹。
我很难找到任何我可以使用的参考资料,希望能得到帮助。

【问题讨论】:

    标签: vba email outlook move


    【解决方案1】:

    这对你有用

    Sub MoveItems()
        Dim myDestFolder As Outlook.Folder
        Set myDestFolder = Application.GetNamespace("MAPI").Folders("youremailaddress").Folders("[Gmail]").Folders("Spam") ' or Junk
        Dim myItem As Object
        Set myItem = GetCurrentItem
        myItem.Move myDestFolder
    End Sub
    
    Function GetCurrentItem() As Object
        Dim objApp As Outlook.Application
        Set objApp = Application
        On Error Resume Next
        Select Case TypeName(objApp.ActiveWindow)
        Case "Explorer"
        Set GetCurrentItem = objApp.ActiveExplorer.Selection.Item(1)
        Case "Inspector"
        Set GetCurrentItem = objApp.ActiveInspector.CurrentItem
        End Select
        GetCurrentItem.UnRead = False
        Set objApp = Nothing
    End Function
    

    【讨论】:

    • 我收到错误消息:“运行时错误 '-2147221233 (8004010f)':抱歉,Exchange Activesync 不支持您尝试执行的操作。” (顺便说一下,我使用的是 Outlook 2013)
    • 您很可能在Set myDestFolder = Application.GetNamespace("MAPI").Folders("youremailaddress").Folders("[Gmail]").Folders("Spam") 这一行收到此错误,如果是这样,请确保您有写入文件夹名称。请告诉我
    • 用什么替换“[Gmail]”和“MAPI”?我将“youremailaddress”替换为我的电子邮件,包括“@outlook.com”,并将“spam”替换为“spam”,这是我由“Inbox”文件夹创建的子文件夹。
    • 您肯定可以通过文件夹链走很长一段路到达垃圾文件夹。默认文件夹更简单。设置 myDestFolder = Application.GetNamespace("MAPI").GetDefaultFolder(olFolderJunk) msdn.microsoft.com/en-us/library/office/ff866724.aspx msdn.microsoft.com/en-us/library/office/…
    • 根据您的描述,请尝试Set myDestFolder = Application.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox).Folders("Spam")
    【解决方案2】:

    我的宏版本:

    Public Sub MarkSelectedAsSpam()
        Dim junkFolder As Outlook.Folder
        Set junkFolder = Application.GetNamespace("MAPI").GetDefaultFolder(olFolderJunk)
        Dim email As Object
        For Each email In Application.ActiveExplorer.Selection
            email.Move junkFolder
        Next
    End Sub
    

    将选定的电子邮件删除到垃圾文件夹。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-12-24
      • 2015-09-01
      • 2016-08-03
      • 1970-01-01
      • 2011-02-08
      • 1970-01-01
      • 2011-06-29
      相关资源
      最近更新 更多