Question

Puis-je supprimer l'élément Imprimer du menu contextuel en cliquant avec le bouton droit de la souris sur un courrier électronique avec VBA?

Je clique à tout jamais sur le clic droit pour répondre à un courrier électronique, mais je clique accidentellement sur Imprimer pour que Outlook l'envoie directement à l'imprimante plus rapidement que je ne peux l'arrêter.

texte alt

NB: j'utilise Outlook 2007.

Était-ce utile?

La solution

Sur la base du lien fourni par TcKs, c’était assez simple. Dans l'exemple ci-dessous, je vérifie le type de l'élément afin qu'il ne concerne que les courriers électroniques et non les éléments du calendrier. Pour entrer le code dans Outlook, tapez Alt + F11, puis développez les objets Microsoft Office Outlook dans la fenêtre Projet. Ensuite, double-cliquez sur ThisOutlookSession. Puis collez ce code dans la fenêtre de code. Je n'aime pas vérifier les légendes de ce type car vous pouvez rencontrer des problèmes d'internationalisation. Mais je n'ai pas vu d'ActionID ou quoi que ce soit sur la commande. Il y avait un identifiant de visage, mais il ne s'agit que de l'identifiant de l'icône de l'imprimante.

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

Autres conseils

Thera est un exemple de programmation par programme avec Outlook: Comment: personnaliser le menu contextuel d'un élément

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top