Удалить контекстное меню печати правой кнопкой мыши из Outlook 2007
-
02-07-2019 - |
Вопрос
Есть ли способ удалить элемент «Печать» из контекстного меню, когда вы щелкаете правой кнопкой мыши по электронному письму с помощью VBA?
Я постоянно щелкаю правой кнопкой мыши, чтобы ответить на электронное письмо, но случайно нажимаю Print
и Outlook отправит его прямо на принтер быстрее, чем я смогу его остановить.
Примечание: Я использую Outlook 2007.
Решение
Судя по ссылке, предоставленной TcK, это было довольно просто.В приведенном ниже примере я проверяю тип элемента, чтобы он влиял только на электронные письма, а не на элементы календаря.Чтобы ввести код в Outlook, введите Alt + F11, затем разверните объекты Microsoft Office Outlook на панели «Проект».Затем дважды щелкните файл ThisOutlookSession.Затем вставьте этот код в окно кода.Я не люблю проверять такие подписи, так как могут возникнуть проблемы с интернационализацией.Но я не увидел ActionID или что-то еще в команде.Был FaceID, но это всего лишь идентификатор значка принтера.
Private Sub Application_ItemContextMenuDisplay(ByVal CommandBar As Office.CommandBar, ByVal Selection As Selection)
Dim cmdTemp As Office.CommandBarControl
If Selection.Count > 0 Then
Select Case TypeName(Selection.Item(1))
Case "MailItem"
For Each cmdTemp In CommandBar.Controls
If cmdTemp.Caption = "&Print" Then
cmdTemp.Delete
Exit For
End If
Next cmdTemp
Case Else
'Debug.Print TypeName(Selection.Item(1))
End Select
End If
End Sub
Другие советы
Вот пример программной работы с Outlook:Как:Настройка контекстного меню элемента