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

Outlook中AddressEntry.GetExchangeUser方法与属性相关文档咨询

关于ExchangeUser对象属性及相关问题解答

1. 基础说明

你提到的AddressEntry.GetExchangeUser是Outlook对象模型中的标准方法,返回对应收件人的ExchangeUser对象,相关属性均有官方定义。

2. 常用可用属性列表

你询问的Division属性确实存在,以下是该对象常用的公开属性:

  • 基础身份属性
    • Name:用户全名/显示名
    • Alias:Exchange账号别名
    • PrimarySmtpAddress:主邮箱地址
    • MobileTelephoneNumber:手机号码
    • BusinessTelephoneNumber:办公电话
  • 组织属性
    • JobTitle:职位
    • Department:所属部门
    • Division:所属事业部/业务线(即你询问的属性)
    • CompanyName:所属公司
    • OfficeLocation:办公地点
    • City/StateOrProvince/Country:办公所在地信息
  • 层级关系属性/方法
    • GetExchangeUserManager():返回用户直属上级的ExchangeUser对象,可继续调用上述所有属性
    • GetDirectReports():返回用户直属下属的AddressEntries集合

3. 打印全部支持属性的方法

你可以通过类型库反射的方式遍历该对象的所有属性,以下是适配你给出的VBA代码风格的实现示例:

Sub PrintAllExchangeUserProperties()
    Dim olApp As Object, olNS As Object
    Dim exUser As Object
    Dim tli As Object, typeInfo As Object, mem As Object
    
    ' 后期绑定创建Outlook实例,无需提前引用Outlook库
    Set olApp = CreateObject("Outlook.Application")
    Set olNS = olApp.GetNamespace("MAPI")
    ' 此处替换为你从Recipient获取的ExchangeUser对象即可
    Set exUser = olNS.CurrentUser.AddressEntry.GetExchangeUser
    
    ' 后期绑定调用类型库工具,无需提前引用Type Information库
    Set tli = CreateObject("TLI.TLIApplication")
    Set typeInfo = tli.ClassInfoFromObject(exUser)
    
    For Each mem In typeInfo.Members
        ' 仅筛选可读属性,过滤方法和只写属性
        If mem.InvokeKind = 2 Then ' INVOKE_PROPERTYGET的常量值为2
            Debug.Print "属性名:" & mem.Name
        End If
    Next
End Sub

运行上述代码后,所有支持的可读属性名会输出到VBA编辑器的立即窗口中。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 03:45:02