Date: prev next · Thread: first prev next last
2024 Archives by date, by thread · List index


Bonjour,

le dispatcher c'est bien. Mais il vaut mieux écrire les macros en utilisant les fonctions de l'API.

Il faudrait nous en dire plus (je crains un problème XY [1]) : d'où vient le classeur à mettre en forme ? Pourquoi avoir recours à une macro ? Avez-vous envisagé d'autres solutions (style de page dans un modèle) ?

[1] https://fr.wikipedia.org/wiki/Probl%C3%A8me_XY

Bien cordialement,
--
Jean-Francois Nifenecker, Bordeaux


Le 20/11/2024 à 09:10, Tulum a écrit :
Bonjour,

Je suis débutant en macro BASIC. J'ai un tableau avec plusieurs onglets. Je souhaite dans une macro 
appliquer un style de page aux onglets (3 onglets) pour l'impression :A4 en paysage avec alignement 
du tableau horizontal centré et adaptation de la zone d'impression en 1 page en largeur.
J'ai essayé ça :

f=0
for f=0 to 2 step 1
feuille=onglet.getbyindex(f)
classeur=thiscomponent.CurrentController.frame
dispatcher.executeDispatch(classeur, ".uno:PageFormatDialog", "", 0, Array())
classeur=thiscomponent
next f

Mais voila :
- cela plante libreoffice 1 fois sur 2. Je précise que c'est en environnement professionnel : 
plusieurs paramètres et accès sont vérouillés par les services informatiques.
- cela m'oblige (ou un autre utilisateur) à mettre les paramètres manuellement (ce qui n'est pas le 
but d'une macro) par onglet (heureusement dans ce cas il n'y en que 3)
- cela marche uniquement pour les onglets 1 et 3, le deuxième onglet reste en style par défaut

De plus, je n'aime pas : je ne comprends pas les 5 paramètres passés à dispatcher.executeDispatch, 
seulement les 2 premiers. J'aime bien comprendre ce que je fais.


Merci pour l'aide



--
Envoyez un mail à users+unsubscribe@fr.libreoffice.org pour vous désinscrire
Les archives de la liste sont disponibles à https://listarchives.libreoffice.org/fr/users/
Privacy Policy: https://www.documentfoundation.org/privacy

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.