Pergunta

Existe alguma maneira que eu possa remover o item Imprimir no menu de contexto quando você clique com o botão direito em um e-mail com VBA?

Estou sempre botão direito do mouse para responder a um e-mail, apenas para clicar acidentalmente Print e ter Outlook enviá-lo diretamente para a impressora mais rápida do que eu posso pará-lo.

text alt

NB:. Estou usando o Outlook 2007

Foi útil?

Solução

Com base no link TcKs fornecer, que era muito simples. No exemplo abaixo eu verificar o tipo de item para que ele afeta apenas os e-mails e não itens de calendário. Para inserir o código no Outlook, tipo Alt + F11, em seguida, expanda o Microsoft Office Outlook objetos no painel de projeto. Em seguida, clique duas vezes no ThisOutlookSession. Em seguida, cole este código na janela de código. Eu não gostaria de checar legendas como este, como você pode ter problemas com a internacionalização. Mas eu não vi um ActionID ou nada no comando. Houve um FaceID mas isso é apenas o id do ícone da impressora.

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

Outras dicas

Thera é amostra de como trabalhar programaticamente com Outlook: Como: Personalizar um Contexto item de menu

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top