OVH Cloud OVH Cloud

Dévalider 1 icone

7 réponses
Avatar
capkurk
Bonjour,

J'ai réellement besoin de désactiver temporairement l'icone 'Impression'.
A l'aide d'1 bouton macro j'imprime alors ce que je veux.

Mais comment désactiver cette icone ??
(pas celle du menu Fichier, mais celle qui s'affiche dans la barre de menu).

Merci bien

7 réponses

Avatar
JpPradier
Bonjour capkurk

Avec cette macro :

Sub desac()

For Each mabar In Application.CommandBars
Set ctrlImp = mabar.FindControl(ID:%21)
If Not (ctrlImp Is Nothing) Then ctrlImp.Enabled = False
Next

End Sub

Tu remplaces le false par true pour réactiver

j-p
Avatar
Jacky
Bonjour,

Est-ce que
'---------
Application.CommandBars.FindControl(Id:%21).Visible = False
'----------
N'était pas suffisant dans ce cas???

Salutations
JJ

"JpPradier" a écrit dans le message
de news:e$
Bonjour capkurk

Avec cette macro :

Sub desac()

For Each mabar In Application.CommandBars
Set ctrlImp = mabar.FindControl(ID:%21)
If Not (ctrlImp Is Nothing) Then ctrlImp.Enabled = False
Next

End Sub

Tu remplaces le false par true pour réactiver

j-p



Avatar
JpPradier
Bonjour JJ

Ben comme capkurk voulait seulement griser l'icone... ;-)
mais c'est vrai que Application.CommandBars.FindControl(Id:%21).Enabled = False
pourrait suffire si on est sur qu'il n'y a qu'un bouton Imprimer dans les barres affichées.

j-p
Avatar
Jacky
Re J-P..

si on est sur qu'il n'y a qu'un bouton Imprimer dans les barres
affichées.



Mais oui, bien sur, je n'avais pas pensé à cela..

Bonne journée.
JJ

"JpPradier" a écrit dans le message
de news:%23$
Bonjour JJ

Ben comme capkurk voulait seulement griser l'icone... ;-)
mais c'est vrai que Application.CommandBars.FindControl(Id:%21).Enabled
= False

pourrait suffire si on est sur qu'il n'y a qu'un bouton Imprimer dans les
barres affichées.


j-p




Avatar
michdenis
Bonjour JP,

"Si on est sûr qu'il n'y a qu'un bouton Imprimer dans les barres affichées."

Lorsque l'on ajoute des boutons "imprimer " à une barre d'outils en provenance de la fenêtre "Personnaliser ", onglet
"commande " , les boutons "imprimer " ont un ID:=4 qui est le même que l'ID du contrôle imprimer que l'on retrouve dans le
menu du fichier Imprimer. Le bouton Imprimer de la barre d'outils "Standard" a un ID:%21.

Pour pouvoir dédoubler le bouton Imprimer dont l'ID; %21, il faut tenir la touche "Ctrl" enfoncée pendant que l'on déplace
à l'aide de la souris le contrôle vers une nouvelle barre d'outils. (Omettons l'ajout par programmation)

En conséquence, si on veut s'assurer qu'il n'y a pas de boutons de commande "imprimer" disponibles sur les barres d'outils,
on se doit de désactiver les 2 types de bouton Imprimer. Comme ceci par exemple :

'--------------------------------
Sub BoutonImprimer()

Dim C As CommandBarControls, Arr()
Arr = Array(4, 2521)

For Each elt In Arr
Set C = CommandBars.FindControls(ID:=elt)
For a = 1 To C.Count
C(a).Enabled = True
Next
Next
Set C = Nothing

End Sub
'--------------------------------

P.S. Cette procédure va affecter aussi la commande "imprimer" du menu fichier... le réactiver individuellement au besoin ...


Salutations!



"JpPradier" a écrit dans le message de news:%23$
Bonjour JJ

Ben comme capkurk voulait seulement griser l'icone... ;-)
mais c'est vrai que Application.CommandBars.FindControl(Id:%21).Enabled = False
pourrait suffire si on est sur qu'il n'y a qu'un bouton Imprimer dans les barres affichées.

j-p
Avatar
JpPradier
Bonjour Denis

J'avoue que je n'avais pas testé ;-) . Merci de l'info denis.

j-p
Avatar
capkurk
Merci à tous.
Je suis toujours ébahi par les connaissances que vous avez.
Comment faites-vous?

Je lis, je bidouille, je vais sur Internet, mais je n'arrive pas à faire
comme vous!
Merci encore.


"JpPradier" a écrit dans le message
de news:uxe%23S$
Bonjour Denis

J'avoue que je n'avais pas testé ;-) . Merci de l'info denis.

j-p