Excel 获取已登录的Office 365用户id
如何在Excel VBA中获取已登录的Office 365用户id 不是Excel 获取已登录的Office 365用户id,excel,vba,office365,Excel,Vba,Office365,如何在Excel VBA中获取已登录的Office 365用户id 不是应用程序。用户名或环境(“用户名”)我假设“ID”指的是此人的姓名?以下几点应该有效 Sub getLoggedInUser() Dim olApp As Object Dim olNS As Object Set olApp = CreateObject("Outlook.Application") Set olNS = olApp.GetNamespace("MAPI") With olNS.session
应用程序。用户名或环境(“用户名”)
我假设“ID”指的是此人的姓名?以下几点应该有效
Sub getLoggedInUser()
Dim olApp As Object
Dim olNS As Object
Set olApp = CreateObject("Outlook.Application")
Set olNS = olApp.GetNamespace("MAPI")
With olNS.session.currentuser.AddressEntry.GetExchangeUser
'some different options for getting the name
Debug.Print .Name
Debug.Print .FirstName
Debug.Print .LastName
Debug.Print .Alias
End With
End Sub
我猜你指的是那个人的名字?以下几点应该有效
Sub getLoggedInUser()
Dim olApp As Object
Dim olNS As Object
Set olApp = CreateObject("Outlook.Application")
Set olNS = olApp.GetNamespace("MAPI")
With olNS.session.currentuser.AddressEntry.GetExchangeUser
'some different options for getting the name
Debug.Print .Name
Debug.Print .FirstName
Debug.Print .LastName
Debug.Print .Alias
End With
End Sub
Office扩展模型没有为此提供任何东西
您所能做的最好的事情是登录到与Office帐户对应的Outlook配置文件,并使用GetExchangeUser
方法,如果AddressEntry
属于Exchange AddressList对象(如全局地址),则返回一个ExchangeUser
对象,该对象表示AddressEntry
列表(GAL)并对应于交换
用户。您必须连接到Exchange服务器才能使用此方法。而且没有人能保证默认配置文件连接到Outlook中的Office365帐户。Office扩展性模型没有为此提供任何功能
您所能做的最好的事情是登录到与Office帐户对应的Outlook配置文件,并使用GetExchangeUser
方法,如果AddressEntry
属于Exchange AddressList对象(如全局地址),则返回一个ExchangeUser
对象,该对象表示AddressEntry
列表(GAL)并对应于交换
用户。您必须连接到Exchange服务器才能使用此方法。而且没有人可以保证默认配置文件连接到Outlook中的Office 365帐户。这不稳定,因为您正在连接的默认配置文件可能未链接到Office 365帐户。这不稳定,因为您正在连接的默认配置文件可能未链接到Office 365帐户。