2 votes

Comment stocker les macros VBA pour Office 2007 pour les avoir toujours à disposition et les partager avec d'autres ?

J'ai créé des macros VBA utiles pour Word, Excel, Outlook et PowerPoint 2007.

Maintenant, je veux

  • les rendre toujours disponibles dans l'application correspondante via raccourci clavier o pour cliquer sur und
  • ont également la possibilité de les partager facilement avec leurs collègues, de sorte qu'en cas de mise à jour, ils peuvent facilement utiliser la nouvelle version.
  • avoir une vue d'ensemble des modifications (contrôle de version)

La création de commandes personnalisées dans le "ruban" d'Office 2007 me semble déjà très difficile et je me heurte au problème suivant : lorsque je stocke les macros dans un certain fichier, ce fichier doit être ouvert pour que les macros fonctionnent - j'aimerais que ce fichier soit ouvert en arrière-plan. Quelqu'un connaît-il un bon tutoriel ou un livre qui traite de ce sujet ?

Puis-je créer mon propre complément d'information ? Si je me souviens bien, un AddIn ne peut plus être modifié directement, donc si le code est en constante évolution, je devrais sauvegarder le code source à un endroit et l'addin à un autre - est-ce vrai ?

3voto

Joel Landau Points 21

Avec tout le respect que je lui dois, Luiz se trompe. Vous n'avez pas besoin de Visual Studio pour créer des compléments, bien que vous puissiez certainement l'UTILISER à cette fin.

Dans PowerPoint, vous écrivez du code VBA et l'enregistrez dans un fichier PPT ou PPTM, selon votre version de PowerPoint. Le code peut utiliser l'ancien modèle d'objet CommandBars pour créer des barres de commande et des boutons (qui apparaissent dans un onglet Add-ins en 2007/2010/2015).

Vous pouvez ensuite l'enregistrer en tant que complément PowerPoint (PPA ou PPAM, selon la version et les besoins de compatibilité). L'utilisateur final peut installer le complément comme n'importe quel autre, ou vous pouvez créer un programme d'installation ou transmettre les paramètres de registre nécessaires à plusieurs utilisateurs par le biais d'une stratégie de groupe ou autre. L'installation d'un complément via le registre n'implique que deux ou trois paramètres.

Une fois installé, les barres d'outils/fonctionnalités de l'add-in seront disponibles. dans l'application et à tout fichier ouvert dans celui-ci, sans se limiter à un fichier de document particulier.

Mises à jour ? Copiez un nouveau fichier PPA/PPAM pour remplacer celui qui est déjà en place. La seule restriction est que PowerPoint ne doit pas être en cours d'exécution lorsque vous faites cela.

Et pour revenir au respect dû à Luiz ... il a raison, un outil tiers serait nécessaire pour effectuer le contrôle de version. Ou ce que beaucoup d'entre nous font si un contrôle très granulaire n'est pas nécessaire ; avant d'apporter des modifications, enregistrer le fichier source dans un nouveau fichier ; le nom de chaque fichier inclut la date de sa création. Il est également utile d'inclure une constante fixée à la même date. Une commande "À propos" dans le complément peut alors afficher la version ou la date ou ce que vous voulez afin que vous puissiez vérifier que l'utilisateur a la bonne version.

Je dispose d'informations plus détaillées à ce sujet sur mon site Powerpoint FAQ :

Création et installation de compléments, de barres d'outils et de boutons http://www.pptfaq.com/index.html#name_Creating_and_Installing_Add-ins-_Toolbars-_Buttons

2voto

abbie Points 131

Pour Excel, vos macros doivent être stockées dans le classeur personnel de macros (PERSONAL.XLSB), qui est caché par défaut. Word dispose d'un modèle Normal qui (IIRC) peut stocker des macros. Outlook a un modèle similaire, mais je ne me souviens pas de son nom. PowerPoint est une anomalie et, pour autant que je m'en souvienne, ne semble pas disposer d'un endroit où stocker des macros globales.

J'utilise SyncBackSE pour synchroniser mon classeur de macros Excel entre les ordinateurs. Je ne mets pas à jour les macros Outlook assez fréquemment pour avoir besoin d'un moyen de les synchroniser, mais vous pourriez probablement faire quelque chose de similaire. La synchronisation ne peut se faire que lorsqu'Excel est fermé, car il verrouille le classeur. Je ne sais pas comment vous pourriez mettre en place un contrôle de version.

1voto

richard druce Points 2502

Si je ne me trompe pas, vous avez besoin de Visual Studio (et de Visual Studio Tools for Office) pour créer des compléments.

Si vous souhaitez que les commandes soient toujours disponibles, vous pouvez essayer de les importer dans un modèle compatible avec les macros et écraser Normal.dotm (au moins dans Word). Il suffit de les alerter avant de le faire.

Qui sont vos collègues ? Font-ils partie de la même entreprise ? Partagez-vous un réseau avec eux ? Si c'est le cas, créez un script de démarrage script qui écrasera le fichier Normal.dotm des utilisateurs.

Si vous n'êtes pas sur le même réseau, essayez des services comme Dropbox. Partagez un dossier avec eux. Dans ce dossier, créez vos fichiers activés par macro et un lot pour écraser le fichier Normal.dotm des utilisateurs.

Une autre option consiste à laisser normal.dotm et à créer des documents modèles simples en les laissant disponibles sur le réseau/cloud et à demander à vos collègues d'utiliser ces fichiers lorsqu'ils souhaitent utiliser vos versions améliorées.

Maintenant... le contrôle de version ? Vous devrez utiliser des outils tiers pour cela.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X