Vba 从Outlook 2007中删除右键单击打印上下文菜单
当您右键单击带有VBA的电子邮件时,我是否可以从上下文菜单中删除打印项? 我总是用鼠标右键单击来回复电子邮件,但却意外地单击了“打印”,让Outlook以我无法停止的速度将其直接发送到打印机Vba 从Outlook 2007中删除右键单击打印上下文菜单,vba,outlook,outlook-2007,Vba,Outlook,Outlook 2007,当您右键单击带有VBA的电子邮件时,我是否可以从上下文菜单中删除打印项? 我总是用鼠标右键单击来回复电子邮件,但却意外地单击了“打印”,让Outlook以我无法停止的速度将其直接发送到打印机 NB:我正在使用Outlook 2007。Thera是如何以编程方式使用Outlook的示例: 基于TCK提供的链接,这非常简单。 在下面的示例中,我检查项目的类型,以便它只影响电子邮件而不影响日历项目。 要在outlook中输入代码,请键入Alt+F11,然后在项目窗格中展开Microsoft Offi
NB:我正在使用Outlook 2007。Thera是如何以编程方式使用Outlook的示例:
基于TCK提供的链接,这非常简单。 在下面的示例中,我检查项目的类型,以便它只影响电子邮件而不影响日历项目。 要在outlook中输入代码,请键入Alt+F11,然后在项目窗格中展开Microsoft Office outlook对象。然后双击ThisOutlookSession。然后将此代码粘贴到“代码”窗口中。我不喜欢检查这样的标题,因为你可能会遇到国际化的问题。但我在命令上没有看到ActionID或任何东西。有一个FaceID,但这只是打印机图标的id
Private子应用程序\u ItemContextMenuDisplay(ByVal命令栏作为Office.CommandBar,ByVal选择作为选择)
Dim cmdTemp作为Office.CommandBarControl
如果Selection.Count>0,则
选择案例类型名称(选择项目(1))
案例“MailItem”
对于CommandBar.Controls中的每个cmdTemp
如果cmdTemp.Caption=“&Print”,则
cmdTemp.Delete
退出
如果结束
下一个cmdTemp
其他情况
'Debug.Print TypeName(Selection.Item(1))
结束选择
如果结束
端接头
不幸的是,这在Outlook 2013中不再有效,尽管我将&Print
替换为&Quick Print
(这是Outlook 2013中上下文菜单项的名称)。@fero您的意思是,在您更改为&Quick Print
后,它仍然有效吗?如果没有,您是否找到Outlook 2013的解决方案?谢谢不,我的意思是,虽然我将其更改为快速打印,但它不起作用。不,我没有找到解决办法。(现在使用Outlook 2016)