Des personnes parmi vous ont-elles déjà essayé l'enregistrement des macros dans LibreOffice ?
objectif d'utilisation des macros de LibreOffice
L'objectif (initial, évoluera en fonction de ce qui est réalisable) serait d'adapter ensuite l'enregistrement pour réaliser ceci :
- dans un premier temps, générer un graphique automatiquement dans calc à partir d'un fichier CSV (liste temporelle de températures)
- dans un deuxième temps d'intégrer de bout en bout ce graphique à partir d'une liste dans un document texte avec placement d'une légende, intégration à la liste des illustrations
- utilisation (avancée) de LibreOffice Uno pour générer le document formaté automatiquement, au besoin par utilisation d'une API de récupération de la liste des données
J'ai choisi l'entrée de forum, car cela me permet de mettre à jour les références1 qui me seront fournies dans vos commentaires ;-)
ce que j'ai déjà fait
Forcément, j'ai déjà lu la documentation (peu diserte) d'enregistrement des macros2 de LibreOffice : premier étonnement, on ne peut enregistrer qu'en Basic (moi qui croyait que Python ou Rust serait possible :/). Dont acte. Bon en plus, l'option est cachée par défaut, ce que je puis comprendre — il faut activer enregistrement des macros dans le Menu Outils / Options / LibreOffice / Avancé / Fonctionnalités optionnelles : Activer l'enregistreur de macro (peut être limité) — et ensuite c'est un peu cryptique ;-)
Je n'en suis qu'au début, il me reste à préciser des cas et trouver un peu plus de références.
Oui, avec un script shell et gnuplot ça se fait aussi (je l'ai déjà fait, là l'idée c'est d'utiliser LibreOffice de bout en bout).
données de référence
autant partir sur un fichier CSV de ma station météo température/humidité.
date mesure intérieur extérieur couloir chambre commentaire
20250711 17h20 23,7 24,3 21,8 22,4 soleil jusque 14h30 sur balcon (monté à 27°C), franchement plus agréable que les 28 de Versailles : ya de l'air au moins (et la mer en face \o/)
20240731 14h30 25,4 65 26,8 75
20240726 23h00 21,1 64 18,7 74
20240801 9h18 24,1 63 23,5 68 22,5 72 23,2 69 couloir à isoler, toujours un peu plus frais et plus humide
20240801 11h00 25,5 63 27,1 61 23,1 73 23,2 69 couloir à isoler, toujours un peu plus frais et plus humide
20240803 13h30 23,7 65 22 75 22,8 66 23,2 63 bah, la pluie ça rafraichit
20240806 9h30 22,9 71 21,3 82 22,1 71 22,6 65 prévision soleil 10h nuageux autrement, potentiellement pluie 11h-13h, peut-être soleil 20h-21h
Références
-
les différentes références que j'ai pu trouver ou qui m'ont été suggérées ↩
-
docs macros LibO peu disert, manque des références pour aller plus loin ;-) ↩
# J'ai essayé et puis...
Posté par MrBidon . Évalué à 1 (+0/-0).
et puis j'ai converti le fichier en xlx et j'ai utilisé du python avec openpyxl
# Vraiment besoin de macros pour ça ?
Posté par Jean-Baptiste Faure . Évalué à 2 (+0/-0).
Il me semble qu'avec des fichiers liés tu pourrais faire ça sans macro.
Le fichier CSV est importé / lié dans un feuille de tableur, dans une autre feuille on extrait et met en forme les données qu'on veut représenter et dans une 3e on construit le graphique qui va bien.
Dans le doc Writer on importe avec liaison le graphique à partir du tableur.
Concernant l'enregistrement d'une macro : il s'agit d'enregistrer (au sens d'un magnétophone) une suite d'actions dans l'interface de LibreOffice pour produire une macro. Évidemment, cette suite d'actions est décrite par des commandes Basic qui est le langage de macro de LibreOffice. Si tu veux faire la même chose en Python, il faut traduire ou repenser le truc en utilisant l'API de LibreOffice.
Pour les macros, il y a un chapitre dédié dans le guide Calc. Voir aussi l'antisèche Basic. Tout ça sur le wiki : https://wiki.documentfoundation.org/FR/Documentation/Publications
Envoyer un commentaire
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.