[Résolu][Calc]Effacement figure regroupée

Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.

Modérateur : Vilains modOOs

Règles du forum
:alerte: Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
Choupinet
Membre OOrganisé
Membre OOrganisé
Messages : 69
Inscription : 02 juin 2020 14:16

[Résolu][Calc]Effacement figure regroupée

Message par Choupinet »

Bonjour,

Avec le bouton ‘Trace de la ligne’ je trace une ligne composée de 5 parties.
3 pour la flèche et 2 pour la ligne droite que je groupe ensuite.

Si je veux effacer cette ligne sans sortir de l’application, j’utilise le Bouton1 en vert, alors que l’utilisation du bouton Jaune génère une erreur,
Si je veux effacer cette ligne après être sorti de l’application, j'utilise le Bouton2 en jaune, alors que l’utilisation du bouton Vert génère la même erreur que dans l’autre cas.

Les deux macros utilisées sont identiques mis à part la valeur de l’index égal à 3 dans le 1er cas et à 0 dans le second.
Celles-ci m’ont été inspirées par la réponse de  Philippe BRONCHART » suite à une question posée en février 2009.

Comment résoudre ce problème ?

Merci.
A.M
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par Choupinet le 26 nov. 2024 05:17, modifié 1 fois.
Libre office 6.4 sous windows 10
Avatar de l’utilisateur
Bidouille
RespOOnsable forum
RespOOnsable forum
Messages : 12553
Inscription : 08 nov. 2005 16:23
Localisation : Brest, France

Re: [Calc]Effacement figure regroupée

Message par Bidouille »

Bonjour,
Choupinet a écrit : 25 nov. 2024 13:25 Les deux macros utilisées sont identiques
Veuillez publier à la suite, le contenu de ces macros.
Cela permet leur indexation pour notre moteur de recherche.
Choupinet a écrit : 25 nov. 2024 13:25 Celles-ci m’ont été inspirées par la réponse de  Philippe BRONCHART » suite à une question posée en février 2009.
Fournissez un lien vers ce fil. On n'a pas forcément envie de fouiller le forum parmi les 375.000 messages qu'il contient.

Merci de nous aider à garder la qualité optimum et professionnelle de cette section.
Choupinet
Membre OOrganisé
Membre OOrganisé
Messages : 69
Inscription : 02 juin 2020 14:16

Re: [Calc]Effacement figure regroupée

Message par Choupinet »

Bonjour,

Voici ce que vous m'avez demandé.

[Résolu][Writer] Dégrouper des formes
Message par joel275 » 15 févr. 2009 18:14

La Macro 1

Code : Tout sélectionner

Sub Efface1
Dim monDocument As Object, maPage As Object
Dim maForme As Object, LeGroupe As Object
Dim groupage As Object

monDocument = thisComponent
MaFeuille = monDocument.Sheets.GetByName("Feuille1")
MaPage = MaFeuille.Drawpage


ungroup = createUnoService(_
"com.sun.star.drawing.ShapeCollection")



 	   LeGroupe= MaPage.GetByIndex(3)    

MaPage.ungroup(LeGroupe())
 
 
maForme = FindObjectByName(MaPage, "Fleche1")
MaPage.remove(maForme)

maForme = FindObjectByName(MaPage, "Fleche2")
MaPage.remove(maForme)

maForme = FindObjectByName(MaPage, "Fleche3")
MaPage.remove(maForme)

maForme = FindObjectByName(MaPage, "Haut")
MaPage.remove(maForme)

maForme = FindObjectByName(MaPage, "Bas")
MaPage.remove(maForme)



 Msgbox "Fin"
 
 
 
End Sub


La Macro 2

Code : Tout sélectionner

Sub Efface2
Dim monDocument As Object, maPage As Object
Dim maForme As Object, LeGroupe As Object
Dim groupage As Object

monDocument = thisComponent
MaFeuille = monDocument.Sheets.GetByName("Feuille1")
MaPage = MaFeuille.Drawpage


ungroup = createUnoService(_
"com.sun.star.drawing.ShapeCollection")



 	   LeGroupe= MaPage.GetByIndex(0)    

MaPage.ungroup(LeGroupe())
 
 
maForme = FindObjectByName(MaPage, "Fleche1")
MaPage.remove(maForme)

maForme = FindObjectByName(MaPage, "Fleche2")
MaPage.remove(maForme)

maForme = FindObjectByName(MaPage, "Fleche3")
MaPage.remove(maForme)

maForme = FindObjectByName(MaPage, "Haut")
MaPage.remove(maForme)

maForme = FindObjectByName(MaPage, "Bas")
MaPage.remove(maForme)



 Msgbox "Fin"
 
 
 
End Sub


Cordialement

A.M
Libre office 6.4 sous windows 10
Avatar de l’utilisateur
Bidouille
RespOOnsable forum
RespOOnsable forum
Messages : 12553
Inscription : 08 nov. 2005 16:23
Localisation : Brest, France

Re: [Calc]Effacement figure regroupée

Message par Bidouille »

Choupinet a écrit : 25 nov. 2024 14:34 [Résolu][Writer] Dégrouper des formes
Message par joel275 » 15 févr. 2009 18:14
Où est le lien ? :fou:
viewtopic.php?t=14921&hilit=d%C3%A9grou ... mes+writer

Fait à votre place
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25776
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: [Calc]Effacement figure regroupée

Message par Dude »

Salut,

Comme toujours, il faut se servir de XRay.
Tu as regardé ce que tu récupérais avec ton getIndex(3).
C'est un des boutons nommé "Contrôle 3".
Forcément, la méthode ungroup ne fonctionnera pas dessus. :roll:
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Choupinet
Membre OOrganisé
Membre OOrganisé
Messages : 69
Inscription : 02 juin 2020 14:16

Re: [Calc]Effacement figure regroupée

Message par Choupinet »

Bonjour,

J'ai résolu le problème en donnant un nom à la figure.

Code : Tout sélectionner

LeGroupe=MaPage.group(Groupage)
LeGroupe.Name = "Aiguille"
La macro pour l'effacement devient:


Code : Tout sélectionner

Sub Efface1
Dim monDocument As Object, maPage As Object
Dim maForme As Object, LeGroupe As Object
Dim groupage As Object

monDocument = thisComponent
MaFeuille = monDocument.Sheets.GetByName("Feuille1")
MaPage = MaFeuille.Drawpage

 
maForme = FindObjectByName(MaPage, "Aiguille")
MaPage.remove(maForme) 
 

 Msgbox "Fin"
 
End Sub

Merci pour votre aide.

Cordialement.

A.M
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre office 6.4 sous windows 10