Excel VBA - créer votre propre barre d'outils

Si vous êtes confronté à la tâche d'automatiser quelque chose dans Excel, oubliez les macros situées directement dans le livre, créez une barre d'outils (ruban), qui



  1. ne dépend pas d'un fichier spécifique
  2. situé dans la barre d'outils principale
  3. donne une interface utilisateur personnalisable


image



Pour créer un tel panneau, vous aurez besoin de



1) un fichier Excel avec l'extension xlam situé dans% userprofile% \ appdata \ roaming \ microsoft \ addins



2) un éditeur de ressources xml (pour les boutons d'étiquetage)



image



3) définir les boutons par exemple



button id="b_MemberSelect" label="Member Select"    onAction="p_MemberSelect" imageMso="ReturnToTaskList"  size="large" 


où p_MemberSelect est une procédure VBA



4) lors de l'initialisation de la procédure (dans le fichier xlam), vous devez passer les paramètres prédéfinis

Sub p_MemberSelect (ByVal vIRibbonControl As IRibbonControl)



Mais cette solution a une limitation - il n'est pas possible de créer des formulaires intégrés dans le panneau Excel, par exemple:



image



Cet exemple de un projet In2Sql (un plugin Excel qui rend des objets SQL) . Dans ce plugin, le code est généré à l'aide des bibliothèques c # et VSTO.



All Articles