Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Barre outil créée par ajout d'une XLA

K

kiorys

Guest
Slt
Voila, j'ai cree une macro que je souhaite copier sur des ordinateurs afin de permettre son utilisation par d'autres personnes. Pour eviter le foutoir (copie sur perso.xls par exemple), j'en ai fait une macro complementaire.

Afin de peaufiner le tout maintenant, je souhaiterais qu'une fois cette xla rajouté aux composants additionels d'Xcel, qu'elle me crée une barre d'outil pour lancer la macro en question.

Comment dois je faire ??
J'ai vu bon nombre d'exemple dans la rubrique telechargement, mais malheureusement, les xla presentes dans les files en question sont proteges par un password (normal, ceci dit).

Kiorys
 
K

kiorys

Guest
J'ai trouve au moyen des procedures evenementielles

- Workbook_AddinInstall, dans laquelle on cree la barre d'outil et on la rend visible
- Workbook_Open, dans laquelle on remet le parametre visible a true pour la barre d'outil, des fois que qq'un l'aurait fermee

ces sub sont places dans le classeur .xla

de meme on pourrait supprimer cette barre d'outil avec la procedure
Workbook_AddinUninstall
j'imagine que ca fonctionne, j'ai pas essaye...

je ne sais pas si ce que j'ai fait est juste aux yeux d'un puriste, disons que ca fonctionne

any comments ????

Kiorys
 
@

@+Thierry

Guest
Salut Kyoris,

Tu te fais les Q et les R !!

Très bien en tout cas, oui je pense que si ces macros évènementielles ont été prévues en VBA ce doit être pour faire quelque chose dans le genre... J'avoue que je n'utilise pas de XLA "maison", il faut que Ti ou bien STéphane passe par là pour leurs commentaires avertis en la matière.

C'est bien d'être curieux... là je n'ai pas le tmp, mais je ferai un tour dans Workbook_AddinInstall et Workbook_AddinUninstall...

Bon aprèm
@+Thierry
 
T

Ti

Guest
si tu utilises l'événement AddinInstall, ta barre d'outils va se créer une fois (à l'installation) et ne testera plus sa présence ensuite. Il est en fait plus simple de faire ce test sur l'événement Workbook_Open. Tu testes si la barre existe déjà à chaque ouverture et si ce n'est pas le cas, tu la crées.
Un conseil : sauf en de rares cas, il est toujours mieux de créer des barres de commande temporaires. L'installation d'une barre de commande est instantanée et en cas de désinstallation de la xla ou d'un problème quelconque, on n'aura pas de traces derrière soi, ce qui est plus élégant.

Pour tous ces tests, tu peux aller voir mon exemple VBAMenu dans la rubriques Leçons et exemples (remonte l'historique, c'est déjà un vieux fichier).
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…