You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Outlook Explorer对象获取选中附件返回NULL问题求助

获取Outlook打开窗口中选中的附件

你遇到的问题是因为Explorer.AttachmentSelection仅适用于Outlook主界面(Explorer)中选中的邮件条目的附件集合,而你截图里的场景是在打开的邮件窗口(Inspector)里选中的附件,这个方法自然取不到。

要获取这种场景下的选中附件,需要借助Outlook邮件的WordEditor对象(因为Outlook的HTML格式邮件是用Word作为编辑器渲染的),具体实现步骤如下:

  • 首先获取当前激活的Inspector窗口:
    Dim objInspector As Outlook.Inspector
    Set objInspector = Application.ActiveInspector
    
  • 从Inspector窗口获取对应的邮件项:
    Dim objMail As Outlook.MailItem
    Set objMail = objInspector.CurrentItem
    
  • 获取邮件的Word编辑器对象,进而获取选中的内容:
    Dim objWordDoc As Word.Document
    Dim objSelection As Word.Selection
    Set objWordDoc = objMail.GetInspector.WordEditor
    Set objSelection = objWordDoc.Application.Selection
    
  • 遍历选中内容里的InlineShape(邮件内容里的附件以InlineShape对象存在),判断并提取附件信息:
    Dim objShape As Word.InlineShape
    For Each objShape In objSelection.InlineShapes
        If objShape.Type = wdInlineShapeLinkedPicture Or objShape.Type = wdInlineShapePicture Then
            ' 输出附件文件名,可根据需求调整处理逻辑
            Debug.Print objShape.OLEFormat.Object.DisplayName
        End If
    Next
    

注意:需要在VBA编辑器的工具-引用中勾选Microsoft Word xx.x Object Library(xx.x对应你的Word版本)才能正常运行代码。

如果是在编辑模式的邮件窗口中操作,逻辑完全一致,都是通过WordEditor获取选中的内嵌附件。

内容的提问来源于stack exchange,提问作者Smit Rathod

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 19:35:15