Cancel est un paramètre qui est passé en lecture et en écriture, car il n'est pas défini "ByVal", et donc il est défini "ByRef" par défaut.
Donc, à l'intérieur de la procédure, changer ce paramètre aura une influence après que la procédure sera exécutée si le programme, qui suit, teste cette variable.
Et c'est le cas, après la procédure, Excel va tester Cancel.
Si Cancel est à True, alors Excel ne va pas faire son traitement habituel, parce qu'Excel considère que l'événement du clic droit a été entièrement pris en charge par la procédure.
Si vous laissez Cancel tel quel, ou si vous mettez Cancel à False, alors, après la procédure, Excel, va continuer en traitant le clic droit comme il le fait par défaut.
Par exemple, si, par défaut, le clic droit affiche un menu contextuel, alors mettre Cancel à True va empêcher l'affichage de ce menu.
Pour plus d'infos, voir la doc officielle http://msdn.microsoft.com/en-us/li [...] S.80).aspx
Edit : Donc, on voit que Cancel n'empêche rien de ce qui se trouve dans la procédure (l'affichage du message), mais à une action pour ce qui vient après par défaut.
Message édité par olivthill le 06-01-2011 à 14:31:18