Macro copier/coller dans un nouveau document - LibreOffice Writer

Bonjour communauté,

Je souhaite faire une macro pour créer un glossaire.

J’ai donc deux traitements de texte ouverts : le premier qui contient un texte, un deuxième qui est vide.

Je veux copier un mot du texte pour le coller dans le document vide pour me faire une liste de mots.
Cette action est très répétitive donc je veux créer une macro qui le fasse pour moi.

J’ai essayé avec la fonction “Enregistrer une macro” mais ça ne marche pas : les opérations copier-coller ne fonctionnent pas et je n’arrive pas à comprendre les codes des macros, je ne sais pas le faire manuellement.

Quelqu’un sait si cela est possible et comment le faire ?

Merci d’avance !

Bonsoir @ladydye

Avez-vous parcouru les exemples fournis dans cette page d’aide ?


Pour montrer à la communauté que la question a trouvé sa réponse, cliquez sur ✓ à côté de la “bonne” réponse. Merci!

Pour tout complément d’information, utilisez les boutons situés en dessous de votre question et éditez votre question ou simplement ajouter un commentaire. SVP ! Ne répondez pas à votre propre question à moins d’y apporter une réelle réponse.

Cordialement, Michel

Bonjour @ladydye

C’est possible par macro : voir CopierMotAutreDoc.odt .

Le programme vérifie que le document “cible” (celui dans lequel sont copiés les mots) est ouvert. Pour cela il faut remplacer en début de programme "C:\Users\Pierre-Yves\Documents\Cible.odt par le chemin d’accès au dit document.

Si le document “cible” est ouvert, Cliquer droit sur un mot et choisir PysSelectMot dans le menu contextuel. Le mot sera copié-collé à la fin du document cible.

[Ajout 23-11-20 18:10]

@ladydye a écrit :

lorsque je l’exécute il m’apparaît un message d’erreur “wrong number of parameters!”

Peut-être une erreur de recopie ou d’adaptation du code (en particulier le chemin vers ton document cible)

Comment fais-tu pour le mettre dans le menu contextuel?

Menu OutilsPersonnaliser▸onglet Menus contextuels:

  • Étendue▸sélectionner le document dans la liste et non LibreOffice Writer
  • Cible▸sélectionner Texte
  • Commandes assignées▸sélectionner l’endroit où on veut insérer l’entrée dans le menu (tout en bas dans la copie d’écran ci-dessous)
  • Catégorie▸sélectionner Macros (en bas de la liste avant Styles)
  • Commandes disponibles▸"déplier" le nom du document pour aller rechercher la macro PysSelectMot
  • Cliquer Ajouter un élément

Procéder de même pour la cible Tableau (afin que la macro soit lançable depuis une cellule de tableau).

Cordialement

Bonjour,

Le lien du document .odt est un texte avec des macros dedans, je ne vois pas comment accéder au code la macro que vous décrivez.
Pourriez-vous copier-coller le code de la macro en question?
Pour que je puisse faire la manip’ dont vous parlez.

Merci!

Le code est accessible via OutilsMacrosGérer les macrosBasic

Pierre-Yves, j’ai trouvé le code, mais lorsque je l’exécute il m’apparaît un message d’erreur “wrong number of parameters!”. Saurais-tu me dire pourquoi ?
De plus, dans ton document je peux faire clique droit Psy Select Mot mais pas dans le mien. Comment fais-tu pour le mettre dans le menu contextuel?