Bonjour Bernard,
voici la macro que j'utilise pour changer mon type de document "Sujet"
ou "Correction"
Ma variable s'appelle : "Type"
sub ToggleType()
dim nomType as string
dim newType as string
dim elements(20)
dim document as object
dim dispatcher as object
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
elements = ThisComponent.TextFieldMasters.getElementNames()
' Chercher la variable "Type"
for i=0 to ubound(elements)
if (instr(elements(i),"Type")>0) then
' Récupérer la valeur du Type
nomType =
ThisComponent.TextFieldMasters.getByName(elements(i)).DependentTextFields(0).content
if (nomType = "Correction")then
newType = "Sujet"
else
newType = "Correction"
endif
' Changer la valeur de la variable
ThisComponent.TextFieldMasters.getByName(elements(i)).DependentTextFields(0).content
= newType
dispatcher.executeDispatch(document,
".uno:UpdateFields", "", 0, Array())
endif
next i
End sub
Elle est très certainement perfectible.
Je n'ai pas encore l'habitude des macros de LO. j'étais plutôt expert
dans VBA (il y a des années)
Bonne journée
Patrick
Le 13/05/2022 à 11:16, Bernard Siaud alias Troumad a écrit :
Bonjour
Le 12/05/2022 à 19:44, Patrick a écrit :
A priori oui, je n'ai pas fait de document maître, mais j'utilise les
sections "masquées sous condition" pour faire comme tu le dis, une
section contenant la correction.
Ma condition est basée sur une variable qui peut avoir deux valeurs
{Sujet, Correction}
J'ai une macro associée à un bouton dans ma barre d'outils qui change
la valeur (Sujet → Correction et vice-versa)
Je n'arrive pas à trouver comment repérer la variable dans une macro.
Je souhaite la modifier, mais, je ne sais pas la trouver.
--
Envoyez un mail à users+unsubscr...@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