Outlook 宏:获取用户姓名缩写



我正在做一个非常简单的项目,该项目在运行宏时对所选消息设置后续标志。

到目前为止,我已经创建了这个效果非常好,但我想通过替换"YA"首字母的手动输入并将默认配置文件用户首字母作为首字母来改进它。

我已经找到了联系人项目对象,但我不知道如何从中取出首字母以将其作为 .标记请求

对此有任何想法吗?

这是我当前的代码:(GetCurrentItem 只返回选定的电子邮件)

Public Sub SetCustomFlagNormal()
Dim objMsg As Object
Set objMsg = GetCurrentItem()

With objMsg
    .MarkAsTask olMarkThisWeek
    .TaskDueDate = Now
    .FlagRequest = "YA"
    .ReminderSet = True
    .ReminderTime = Now + 2
    .Save
End With
Set objMsg = Nothing
End Sub

Outlook 对象模型为 Namespace 和 Account 类提供 CurrentUser 属性。类的属性返回当前登录用户的显示名称作为收件人对象。

Sub DisplayCurrentUser() Dim myNamespace As Outlook.NameSpace Set myNameSpace = Application.GetNameSpace("MAPI") MsgBox myNameSpace.CurrentUser End Sub

帐户类的属性返回一个 Recipient 对象,该对象表示帐户的当前用户标识。请参阅收件人类的 Name 属性。

我终于找到了一种方法。

访问多个网站后,我能够确定Outlook不提供获取用户首字母的方法,并且必须调用Word来获取首字母缩写由于办公室在所有办公应用程序中使用相同的首字母缩写。

我在这个网站上得到了我的回复。

http://blogs.technet.com/b/heyscriptingguy/archive/2008/03/18/how-can-i-retrieve-the-user-name-and-user-initials-from-microsoft-powerpoint.aspx

希望对你有帮助

最新更新