Bonjour
Control.Label = "text" te permet changer le texte du bouton
Ci dessous une macro qui le fait
JLuc



sub MasquerColonnes 'masque les colonnes et repositionne le bouton de control

dim TextControl as string
Dim Position as new com.sun.star.awt.Point
Dim Taille as new com.sun.star.awt.Size
MonDocument = ThisComponent 'Attribue le document en cours
MaFeuille = MonDocument.CurrentController.ActiveSheet
DrawPage = MaFeuille.DrawPage 'Attribue la page graphique
'On est obligé de parcourir tous les objets graphique pour retrouver le N° d'index associé au nom
For i = 1 to MaFeuille.DrawPage.Count - 1
Shape = MaFeuille.DrawPage(i)
If HasUnoInterfaces(Shape, "com.sun.star.drawing.XControlShape") Then
If Shape.Control.Name = "BtnMasquerCol" Then IndexShape = i
'print i End If
End If
Next i
Shape = MaFeuille.DrawPage(IndexShape) 'Attribue l'objet graphique (nécessaire pour accéder à la position et la taille du control)
'pour conaitre l'index (7) j'ai utilisé la sub ShapeIndex
Form = DrawPage.Forms.GetByIndex(0)'Attribue le formulaire (nécessaire pour accéder aux propriètés du control)


Control = Form.getByName("BtnMasquerCol")'Attribue l'objet de control formulaire par son nom 'on récupére la position et la taille initiale du bouton
Position = Shape.Position
PosX = Position.x
PosY = Position.y
Taille = Shape.Size
TailleX = Taille.Width
TailleY = Taille.Height LaZone = MaFeuille.getCellRangeByName("J1:N1")
MesColonnes = LaZone.Columns
if Control.label = "Masquer Tva-Devises" then
Control.label = "Voir Tva-Devises"
MesColonnes.IsVisible = false
else
Control.label = "Masquer Tva-Devises"
MesColonnes.IsVisible = true
end if
'on restitue la position et la taille initiale du bouton
Position.x = PosX
Position.y = PosY
Shape.Position = Position
Taille.Width = TailleX
Taille.Height = TailleY
Shape.Size = Taille


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Répondre à