Importer une macro d'un fichier exemple ; Lanceurs

Venez découvrir tous les tutoriels, modèles et autres foires aux questions afin de maîtriser rapidement votre suite bureautique favorite.

Modérateur : Vilains modOOs

Règles du forum
Aucune question dans cette section !
Cette section est faite pour présenter les tutoriels. Si vous avez une question sur l'installation, le fonctionnement ou l'utilisation, vous devez poster dans la section du module où se produit le problème.
Avatar de l’utilisateur
Papayes
Membre fOOndateur
Membre fOOndateur
Messages : 4154
Inscription : 07 déc. 2005 14:55
Localisation : Vic-Fezensac dans le Gers

Importer une macro d'un fichier exemple ; Lanceurs

Message par Papayes »

Importer une macro exemple d'un fichier source
Bouton, Raccourci clavier, Icône de la barre Standard comme Lanceurs de la macro.


Bonjour,

Sur le forum, de nombreuses réponses, ainsi que les macros proposées dans Suprême de code,
proposent une solution par macro sous forme d'un fichier ODF (.odt, .ods, .odb, .odp, .odg)
Gérer ces macros est évident pour les spécialistes des macros, beaucoup moins pour les profanes !

Ce tutoriel d'initiation pour vous aider à importer une macro modèle à votre document ou à votre profil utilisateur.
Exemples proposés pour ce tutoriel a écrit :Voici pour vous entraîner, un des très nombreux fichiers sources proposés par alhazred
  • Fichier source.ods
    (11.54 Kio) Téléchargé 1264 fois
    et un fichier exercice destiné à recevoir la macro exemple :
    Document destination.ods
    (7.82 Kio) Téléchargé 951 fois
  • Pour les parties IV à VI, le fichier origine d'alhazred permettant l'Enregistrer sous avec la sélection du texte dans le document texte :
    [Writer]Renommer un document par le texte sélectionné
    Adaptation de cette macro à votre système et au dossier de destination a écrit :Comme la macro contient nécessairement le chemin du dossier où doit se faire la sauvegarde, il faudra l'adapter au dossier de destination désiré et au système utilisé en modifiant le chemin. Exemples de modification :
    • Pour Windows 8.1
      url = ConvertToUrl("C:\users\papayes\Desktop\FichiersForum\" & sel.String & ".odt")
    • Pour MacOsX
      url = ConvertToUrl("/Users/papayes/Documents/FichiersForum/" & sel.String & ".odt")
     Ajout : 
    • Voici un fichier reprenant la macro originale d’alhazred
      mais les Voolontaires du Forum, joel275, luky-luke, Piaf et Alain de La Chaume
      y ont apporté les modifications suggérées par alhazred
      Qu’ils soient tous vivement remerciés pour leur participation active.

      Voici le fichier comprenant la macro finale que je vous recommande d'utiliser désormais,
      car elle s'adapte automatiquement au système en vous proposant le choix de l'emplacement pour Enregistrer.
      Exemple sous OsX : N'oubliez pas de cocher, surtout pour MSWindows.
      Exemple sous OsX : N'oubliez pas de cocher, surtout pour MSWindows.
      Renommer selon sélection_v3.odt
      (33.32 Kio) Téléchargé 521 fois
     
Pour ce tutoriel, les copies d'écran I à III affichent le cas de fichiers du module Calc (.ods)
mais les procédures sont identiques pour tout autre module .

Plan du tutoriel :
  1. Importer dans un document ne comportant pas de macro : ce message
  2. Importer dans un document comportant déjà une ou plusieurs macros et
  3. Importer dans votre bibliothèque personnelle de macros "Mes Macros" Allez au message
  4. Affecter une macro à un bouton. Allez au message
  5. Assigner une macro à un raccourci clavier. Allez au message
  6. Placer une macro dans la barre d'outils sous forme de bouton Texte (A) ou d'une Icône (B). Allez au message
:idea: Raccourci clavier important pour les macros :
Alt + F11 permet d'ouvrir directement la boite de dialogue Macros OpenOffice Basic
Macros Openoffice Basic.png
:arrow: Emplacement des macros : leur "conteneur"
Bibliothèque des macros.png
I. Importer dans un document ne comportant pas de macro
C'est le cas le plus simple.
  1. Importer la macro
    Ouvrez les 2 fichiers :
    • le fichier source qui comprend la macro à importer : Fichier source.ods
    • votre document destination dans lequel vous devez importer la macro modèle : Document destination.ods
    Dans l'un des deux,
    Menu : Outils > Macros > Gérer les macros > Openoffice Basic... >
    Menu_Outils_Macros.png
    De suite dans la boite de dialogue Macros OpenOffice Basic
    Dialogue_Macros_OpenOffice_Basic.png
    > Clic sur le bouton à droite : Gérer...
    Nouvelle boite de dialogue : Gestion des macros de Openoffice Basic
    Dialogue_gestion_des_macros1.png
    Développez par les petits Image les 2 fichiers :
    • votre fichier Document destination.ods
    • et le Fichier source.ods
    Sélectionnez le Module1 du Fichier source.ods et, tout en appuyant sur la touche Ctrl,
    Copier-glisser-déposer module1.png
    copier-glisser-déposer dans le Standard (vide) du Document destination.ods.
    ➫ prenez l'habitude de toujours travailler avec la touche Ctrl enfoncée (alt sous Mac) qui impose le "copier"Image,
    même si, dans cette situation, le fait de simplement déplacer Image est sans gravité, car si on oublie de fermer le fichier source sans enregistrer la modification, l'original reste de toute façon à disposition sur le forum.
    Module1 copié dans Standard destination.png
    Fermez la boite de dialogue Gestion des macros de OpenOffice Basic par le bouton Fermer
    puis fermez de même la première boite de dialogue Macros OpenOffice Basic.
    Votre fichier contient désormais la macro du fichier source.
    Fermez votre document
    Image
    ET enregistrer cette fois les modifications !
  2. Pour exécuter la macro :
    1. Vous devez avoir réglé le Niveau de sécurité des macros à Moyen
      dans Menu : Outils > Options > OpenOffice > Sécurité (1)
      Outils Options Sécurité Niveau de sécurité.png
      Bouton Sécurité des macros... (2) >
      Dans la boite de dialogue Sécurité des macros, cochez Niveau de sécurité moyen (3)
      Validez par le bouton OK (4) et OK (5) de la précédente boite de dialogue.
    2. Ouvrir le fichier en acceptant l'ouverture des macros
      message d'alerte de macros.png
    3. N'oubliez pas de faire les manipulation nécessaires à son exécution, généralement une sélection des plages de cellules, de la partie du texte à traiter, de l'objet ou de la diapo, etc.
    Menu : Outils > Macros > Exécuter la macro...
    menu Outils Macros Exécuter la macro.png
    Choisir celle-ci... dans la Boite de dialogue Sélecteur de macro
    Sélecteur de macro Exécuter.png
    Bouton Exécuter.
Suite ➫
Avatar de l’utilisateur
Papayes
Membre fOOndateur
Membre fOOndateur
Messages : 4154
Inscription : 07 déc. 2005 14:55
Localisation : Vic-Fezensac dans le Gers

Importer une macro dans un document qcq ou dans "Mes macros"

Message par Papayes »

Importer une macro exemple
II. Importer une macro exemple dans un document comportant déjà une ou plusieurs macros
III. Importer une macro exemple dans votre bibliothèque de macros


II. Importer une macro exemple dans un document comportant déjà une ou plusieurs macros

La procédure est naturellement la même pour se retrouver dans la deuxième boite de dialogue Gestion des macros de OpenOffice Basic
Procédure a écrit :Ouvrez les 2 fichiers :
  • le fichier source qui comprend la macro à importer : Fichier source.ods
  • votre document destination dans lequel vous devez importer la macro modèle : Document destination.ods
Dans l'un des deux,
Menu : Outils > Macros > Gérer les macros > Openoffice Basic... >
De suite dans la boite de dialogue Macros OpenOffice Basic > Clic sur le bouton à droite : Gérer...
Dans la boite de dialogue Gestion des macros de OpenOffice Basic, développez par les petits Image les 2 fichiers :
  • votre fichier Document destination.ods
  • et le Fichier source.ods
  • Module1 de standard Source.png
Le copier-glisser-déposer d'un Module de même nom ne peut évidemment pas fonctionner.
Si vous désirez copiez le Module1 du Standard du Fichier source sur le Document destination, il faudra simplement le renommer.

Renommer un module
  • Malheureusement, il n'y a ni commande, ni raccourci ni bouton pour renommer Module1
    et sa sélection pour modification n'est pas évidente (pas de double-clic ou autre astuce).
    1. Sélection du Module1 qui se trouve alors en inverse vidéo Image,
    2. Clic sur la sélection et attendre que le point d'insertion clignote à sa droite Image,
    3. Clic de nouveau : Module1 n'est plus en inverse vidéo et le point d'insertion clignote Image
    4. Modification du nombre par exempleImage sélection du 1 et frappe de 4.
Le copier-glisser-déposer du Module4 s'effectue ensuite sans problème.
  • Copier-glisser-déposermodule4.png
    Il ne reste plus qu'à fermer les deux boites de dialogue
    et d’enregistrer les modifications de votre document.

III. Importer une macro exemple dans votre bibliothèque de macros
Le profil de l'utilisateur contient déjà un certain nombre de macros dans "Mes macros",
par exemple celles qui permettent à l'extension de sauvegarde automatique de fonctionner acIncrSav.
(Vous ne pouvez pas modifier les macros qui se trouvent dans "Macros Openoffice" qui se situent dans le dossier programme.)

La procédure est presque la même pour se retrouver dans la deuxième boite de dialogue Gestion des macros de OpenOffice Basic
mais il suffit d'ouvrir le fichier source qui comprend la macro à importer : Fichier source.ods
Procédure a écrit :Ouvrez le Fichier source.ods puis
Menu : Outils > Macros > Gérer les macros > Openoffice Basic... >
De suite dans la boite de dialogue Macros OpenOffice Basic > Clic sur le bouton à droite : Gérer...
Dans la boite de dialogue Gestion des macros de Openoffice Basic, développez par les petits Image
  • Mes macros
    mais seulement son Standard
  • et le Fichier source.ods
  • MesMacrosdéveloppées avec Source.png
Le copier-glisser-déposer d'un Module de même nom ne peut évidemment pas fonctionner.
Si vous désirez copiez le Module1 du Standard du Fichier source dans le Standard de "Mes macros",
il faudra simplement le renommer.

Par exemple, en renommant comme ci-dessus le Module1 du Standard du Fichier source.ods en Module2,
  • Copier-déposerdans mesMacros.png
Le copier-glisser-déposer du Module4 s'effectue ensuite sans problème.
  • mesmacros complétées.png
    Il ne reste plus qu'à fermer les deux boites de dialogues.

    ➫ Pensez ultérieurement à sauvegarder votre profil afin de ne pas perdre vos précieuses macros.
    Voir le fil Emplacement du Profil, sa purge et le Démarrage rapide afin de sauvegarder votre meilleur profil suivant votre configuration (Windows, MacOsx, Linux).
Remarque : Je ne traite pas ici volontairement de la possibilité de copier le contenu d'un fichier main d'une macro dans un autre container,
ni de l'option "Importer" qui ne fonctionne correctement (n'écrase pas vos propres macros) que si vous avez des bibliothèques avec des noms différents, ce qui est rarement le cas dans les exemples donnés dans le forum. Vous découvrirez ces possibilités lorsque vous serez plus habitué à la gestion des macros.

Suite ➫
Avatar de l’utilisateur
Papayes
Membre fOOndateur
Membre fOOndateur
Messages : 4154
Inscription : 07 déc. 2005 14:55
Localisation : Vic-Fezensac dans le Gers

Assigner une macro à un bouton

Message par Papayes »

Importer une macro exemple
IV. Assigner une macro à un bouton


Souvent également, le fichier exemple comporte un bouton qui permet de lancer la macro.
C'est un petit exercice plus simple à faire qu'à décrire et qui se décompose en deux parties :
  1. Création du bouton,
  2. Affectation de la macro à ce bouton.
A. Création du bouton
  1. La barre d'outils Contrôles de formulaire
    Ouvrir la barre d'outils Contrôles de formulaire
    Menu : Affichage > Barres d'outils >
    menu Affichage contrôles de formulaire.png
    Cocher : Contrôles de formulaire
    Comme toutes les barres d'outils, elle est redimensionnable (mettre le curseur sur sa base et le déplacer est plus facile)
    et repositionnable à volonté, soit flottante, soit ancrée à côté des autres barres.
    Image
    Si la plupart des icônes sont grisées, pour les activer, cliquez sur le bouton primordial
    (Dés)activer le mode ébauche Image
    (ou appellation "mode conception" dans d'autres versions).
  2. Cliquer sur le Bouton Image de la barre d'outils Contrôles de formulaire >
    Dessiner en glissant le curseur croix à l'aide de la souris pour le dimensionner comme vous le désirez.
    Image
  3. Cliquer droit dans le bouton sélectionné (8 poignées vertes de réglage)
    Image
    Dans le menu contextuel > « Contrôle... »
  4. La fenêtre Propriétés : Bouton s'ouvre :
    Bouton1 Propriétés général Nom.png
    Onglet Général (1)
    Si vous désirez modifier le nom du Bouton, tapez dans la zone Étiquette le texte désiré (2)
    par exemple "Sélectionnez la colonne", etc.
    Si vous ne voulez pas qu'il s'imprime, dans la zone Imprimable, choisir Non par sa liste déroulante Image
    et procédez à d'autres réglages si nécessaire,
    • Il n'y a pas de bouton OK, la fermeture de la boite de dialogue par Image
      enregistre les modifications automatiquement
      .
    puis passez à l'onglet Événements
B. Assignation d'une macro à ce bouton
Onglet : Événements
  • Dans cet onglet (1), cliquez sur le bouton ... (2) à droite correspondant à l’évènement à attribuer à ce Bouton.
    Deuxième évènement : Exécuter l'action
    Affecter une macro à un bouton.png
    La boite de dialogue Assigner une action s'affiche en superposition
    elle confirme le choix "Exécuter l'action" en le mettant en inverse vidéo, (3) (il peut être encore modifié à ce niveau)
    le bouton Macro... (4) affiche la boite de dialogue Sélecteur de macro
    Sélecteur de macro4.png
    qui permet de choisir la macro désirée
    • soit celle contenue dans le document (ici Document destination.ods)
    • soit une macro de votre bibliothèque de Macros : "Mes macros"
    Cliquez sur le bouton OK
    La macro s'affiche dans la zone choisie précédemment Exécuter l'action
    La_macro_est_assignée.png
    Validez par le bouton OK

    Fermez la boite de dialogue Propriétés - Bouton par sa croix de fermeture.Image
C. Lancement de la macro assignée à ce bouton
  • Bouton en mode ébauche.png
    Pour que votre bouton soit actif, quittez le mode de conception ou mode ébauche en cliquant sur le bouton Image
    de la barre d'outils Contrôles de formulaires que vous pouvez fermer.

    Image
    Un clic sur votre bouton lancera la macro si vous avez respecté les 2 points
    - niveau de sécurité des macros correctement réglé au Niveau moyen
    - manipulation préalable nécessaire au bon fonctionnement de la macro (Sélection de la colonne, etc.)
Pour maîtriser les "Contrôles de formulaire", vous pourrez ensuite lire le tutoriel : Création des Contrôles de Formulaire

Suite ➫
Avatar de l’utilisateur
Papayes
Membre fOOndateur
Membre fOOndateur
Messages : 4154
Inscription : 07 déc. 2005 14:55
Localisation : Vic-Fezensac dans le Gers

Assigner une macro à un raccourci clavier

Message par Papayes »

Importer une macro exemple
V. Assigner une macro à un raccourci clavier


Si la macro concerne OpenOffice et pas seulement un document particulier,
il est également possible d'affecter cette macro à un Raccourci clavier (= une combinaison de touches à appuyer en même temps),
plutôt que d'utiliser le bouton précédemment créé.

C'est certainement la procédure la plus rapide
pour lancer une macro contenue dans "Mes macros".

Menu : Outils > Personnaliser...
  • ou directement dans une des barres d'outils, la petite flèche ▼ à l’extrême droite
    Personnaliser Barre d'outils Standard.png
pour ouvrir la boite de dialogue Personnaliser
Onglet Clavier
  • Personnaliser_Clavier 1.png
  1. Choisir si le raccourci fonctionnera pour tous les modules ou par exemple ici pour le traitement de texte Writer (1)
  2. Descendre l'ascenseur (2) pour afficher le Raccourci clavier
    et vérifier qu'il n'est pas utilisé par votre système : très important pour ne pas avoir de mauvaises surprises.
    • Le choix du raccourci est primordial, non seulement pour le mémoriser
      mais encore en frappe clavier, qu'il soit accessible d'une seule main par exemple...
      pour cette macro sous MSWindows, choisir Alt+E, E comme Enregistrer
      personnellement, comme je l'utilise pour le Forum, j'utilise Alt + F , F comme Forum.
  3. Descendre l'ascenseur (3) pour afficher la Catégorie de Fonctions à lui assigner.
    C'est au plus bas : Macros OpenOffice
    Personnaliser_Clavier 2.png
  4. Sélectionnez le raccourci choisi libre (4) (il ne doit rien avoir d'affiché à côté)
  5. Développez Macros OpenOffice
    Choisir votre macro dans user > Standard > Module x (5)
  6. Sélectionnez votre macro dans la zone Fonction (6)
    Pour l'exemple, Module 3 ne comporte qu'une seule macro EnregistrerSousSelection
  7. Cliquez sur le Bouton Modifier (7)
    Personnaliser_Clavier 3.png
  8. Dans la zone Touches (8) s'affiche le raccourci choisi.
    tandis que le nom de la macro affectée s'affiche en face du raccourci (8 bis)
  9. Validez par le bouton OK (9)
La frappe des touches du raccourci lancera la macro si vous avez respecté les 2 points
- niveau de sécurité des macros correctement réglé au Niveau moyen
- manipulation préalable nécessaire au bon fonctionnement de la macro (par exemple, une sélection, etc.)

Suite ➫
"Tout ce qui n'est pas donné est perdu"
Avatar de l’utilisateur
Papayes
Membre fOOndateur
Membre fOOndateur
Messages : 4154
Inscription : 07 déc. 2005 14:55
Localisation : Vic-Fezensac dans le Gers

Assigner une icône à une macro dans la barre d'outils

Message par Papayes »

Importer une macro exemple
VI. Placer une macro dans la barre d'outils sous forme de bouton Texte (A) ou d'une Icône (B)


Il est également possible d'affecter cette macro à une commande,
  • sous forme de bouton texte :
    A. Assigner une macro à un bouton texte dans la barre d'outils Standard
  • puis sous forme d'une icône dans une barre d'outils :
    B. Remplacer le bouton texte par une icône dans la barre d'outils
C'est certainement la procédure la plus efficace
pour lancer une macro contenue dans "Mes macros"
si elle doit être employée très régulièrement.

C'est par exemple le cas de cette macro d'alhazred [Writer]Renommer un document par le texte sélectionné
qui permet
d'Enregistrer sous en sélectionnant simplement le texte désiré dans la page,
ou de cette dernière plus élaborée qui limite les caractères autorisés afin d'éviter des erreurs et offre le choix du dossier d'enregistrement
:
Renommer selon sélection_v2.odt
(25 Kio) Téléchargé 389 fois
[/size]

A. Assigner une macro à un bouton texte dans la barre d'outils Standard

Choisir la Barre d'outils Standard surtout si vous désactivez la Barre Formatage devenue superflue avec le Bandeau latéral.

Menu : Outils > Personnaliser...
  • ou directement dans la barre d'outils,
    • soit par clic droit sur n'importe quelle icône
      soit par le menu déroulant de la petite flèche ▼ à l’extrême droite
    Ces copies d'écran sont réalisées sous WIN 7 (Nom des fenêtres aligné à gauche)
    Ces copies d'écran sont réalisées sous WIN 7 (Nom des fenêtres aligné à gauche)
pour ouvrir la boite de dialogue Personnaliser
Onglet Barre d'outils
  • Personnaliser_Commande_MacroModifier1.png
    Dans la rubrique Contenu de la barre d'outils :
    Cliquez à l'emplacement désiré dans le cadre Commandes (1),
    par exemple sur la commande désactivée par défaut Enregistrer sous,
    ce qui évitera d'utiliser les grosses flèches noires par clics successifs après l'ajout.
    Bouton Ajouter... (2) >
Dans la boite de dialogue Ajouter des commandes
  • PersonnaliserBarred'OutilsAjouter2.png
    Catégorie : descendre par l'ascenseur tout en bas ⊞ Macros OpenOffice

    Développez Macros OpenOffice
    Mes macros > Standard > Module x (1)
    Choisir la macro dans la zone Commandes (2).
    pour l'exemple, Module 3 ne comporte que EnregistrerSousSelection
    Bouton Ajouter (3)
    Fermez soit avec le Bouton Fermer soit par la croix de fermeture.
La commande apparaît dans la boite de dialogue Personnaliser
  • Personnaliser_Commande_MacroTexte.png
    mais sans icône entre la coche et son nom,
mais également dans la Barre d'outils Standard
  • Personnaliser_IconeTexte.png
Validez par le bouton OK.

Si vous avez prévu un nom court pour cette macro, vous pouvez laisser ce bouton texte.
Mais je vous propose de lui assigner une icône,
ce qui permet de gagner de la place et de placer d'autres icônes de macro dans la même barre de menu.

B. Remplacer le bouton texte par une icône dans la barre d'outils

Revenez à la boite de dialogue Personnaliser
Sélectionnez la commande créée (1).
  • Personnaliser_Commande_MacroModifier.png
    Bouton Modifier et son menu déroulant > (2)
    Commande Modifier l'icône...(3)

    La boite de dialogue Modifier l'icône
    Modifier l'icône.png
    propose toutes les icônes de AOO utilisables;
    Comme malheureusement elle n'est pas étirable,
    il faut cliquer successivement sur le genre d’ascenseur (1) pour les faire toutes apparaître.
    Sélectionnez une icône (2)
    Validez par le bouton OK (3)
L'icône choisie apparaît dans la boite de dialogue Personnaliser
  • Modifier l'icônePlacée.png
et dans la barre d'outils Standard
  • Icône Macro Barre Standard.png
C. Personnalisation complémentaire :
Vous pouvez modifier l'icône à volonté en revenant à la boite de dialogue Personnaliser
Sélectionnez la commande créée,
Bouton Modifier...

Vous pouvez choisir une autre icône mais aussi utiliser une icône que vous aurez créée spécialement :
Bouton Importer
Icône dessinée et importée.png
Elle doit être au format .png et mesurer 16 pixels sur 16 pixels.

Si vous avez également attribué un raccourci à votre macro,
il apparaîtra en Infobulle lors du passage du curseur sur son icône.
Personnalisation Raccourci et icône dessinée.png
D. Sauvegarde de ces personnalisations
  • Ces réglages font enregistrés dans le dossier personnel de OpenOffice (le profil).
    Il convient d'en faire une copie afin de pouvoir les retrouver en cas de problème. Les Profils Utilisateurs et Restauration partielle du Profil :

    Les barres d'outils personnalisées figurent dans le répertoire toolbar dont le chemin est
    user\config\soffice.cfg\modules\Nom_du_ Module\toolbar\
    par exemple pour le module de traitement de texte Writer :
    Modification des Barres menu.png
    user\config\soffice.cfg\modules\swriter\toolbar\
    avec x fichiers (custom_toolbar_xxxx.xml, standardbar.xml, textobjetbar.xml) qu'il suffit de copier-coller pour retrouver ses barres d'outils personnalisés.
Cordialement vôtre,
"Tout ce qui n'est pas donné est perdu"
Répondre