【问题标题】:In Outlook 2013, can a macro open a new custom form?在 Outlook 2013 中,宏可以打开新的自定义窗体吗?
【发布时间】:2014-03-13 18:53:06
【问题描述】:

在 Outlook 2013 中使用开发人员选项卡 -> 设计表单,我从交付的消息表单创建了一个自定义表单(还没有任何模块)并将其放置在我的个人表单库中。 Outlook 告诉我 Message 类是:IPM.Note.MyForm

我创建了一个宏并设置了一个新的功能区按钮来运行宏。我希望宏打开我的自定义表单的一个新实例,但我无法让它工作。

使用以下代码,我可以获取宏以打开已传递消息表单的新实例:

Set newItem = Application.CreateItem(olMailItem)
newItem.Display
Set newItem = Nothing

我无法打开我的自定义表单。我尝试了以下作为 CreateItem 的参数:olMailItem.MyForm 和 IPM.Note.MyForm。

宏编辑器 intellisense 有大约 9 个选项作为 CreateItem 的参数,所有这些选项似乎都是交付的对象/表单,如果不使用其中一个选项,则会出错。

我只做了很少的 vba 和 office 宏,有没有办法让这个宏打开我的自定义表单?谢谢。

【问题讨论】:

    标签: vba outlook outlook-addin


    【解决方案1】:

    查看项目。添加http://msdn.microsoft.com/en-us/library/office/ff861028(v=office.15).aspx

    Sub AddForm() 
     Dim myNamespace As outlook.NameSpace 
     Dim myItems As outlook.Items 
     Dim myFolder As outlook.Folder 
     Dim myItem As outlook.MailItem 
    
     Set myNamespace = Application.GetNamespace("MAPI") 
     Set myFolder = myNamespace.GetDefaultFolder(olFolderInbox) 
     Set myItems = myFolder.Items 
     Set myItem = myItems.Add("IPM.Note.MyForm") 
    End Sub
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-27
      相关资源
      最近更新 更多