[Résolu][Calc] Masquer automatiquement les graphiques à l'ouverture

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 !
Sebiou
Fraîchement OOthentifié
Messages : 9
Inscription : 15 avr. 2024 19:32

[Résolu][Calc] Masquer automatiquement les graphiques à l'ouverture

Message par Sebiou »


La modération vous a écrit: Pour la bonne tenue de ce forum, veillez à respecter la mise en forme des balises (première lettre en majuscule puis le reste en minuscules, le tout entre crochets).
Les termes implicites comme macro n'ont pas besoin d'être mentionnés.
< Masquer automatiquement les graphiques à l'ouverture > suffira.

Bonjour,

Dude m'a fais une macro il y a peu et j'aimerais savoir comment la modifier pour masquer automatiquement les 6 graphiques (atelier 1, atelier 2, etc...) à l'ouverture du classeur ?

Voici le code

Code : Tout sélectionner

Sub ActiveDudeGraph(oEvt)
	'récupérons le libellé du bouton
	oSource = oEvt.Source
	sBouton = oSource.getModel.Label

	oPage = ThisComponent.Sheets.getByName("Par Atelier CT").DrawPage
	aGraph = array( "Atelier 1", _
			"Atelier 2", _
			"Atelier 3", _
			"Atelier 4", _
			"Atelier 5", _					
			"Atelier 6")
	'masquons tous les graphiques
	for each sItem in aGraph
		oGraph = FindObjectByName(oPage, sItem)
		oGraph.Visible = false
	next	
	'position du graphique à afficher
	Dim oPos As New com.sun.star.awt.Point
	oPos.X = 20888
	oPos.Y = 3500			
	oGraph = FindObjectByName(oPage, sBouton)
	oGraph.Visible = true
	oGraph.setPosition(oPos)									
End Sub
Et le fichier exemple est juste en dessous :
calc_Graph_avec_boutons(1).ods
.

Merci d'avance,

Sebiou
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par Sebiou le 26 avr. 2024 16:45, modifié 3 fois.
LibreOffice 7.3.7.2M8 sous windows 10 pro.
Avatar de l’utilisateur
Dolev
SuppOOrter
SuppOOrter
Messages : 1202
Inscription : 19 août 2018 05:20

Re: [calc] Modifier une macro pour masquer automatiquement les graphiques à l'ouverture.

Message par Dolev »

Bonsoir,

Qu'est ce que vous ne comprenez pas ? :roll:
Le code mentionne pourtant

Code : Tout sélectionner

'masquons tous les graphiques
Menu Outils > Personnaliser > Onglet Evénements
Il suffit ensuite de brancher la macro à l'événement "Ouverture du document"
Open Office 4.1.16 sous Windows 11
Sebiou
Fraîchement OOthentifié
Messages : 9
Inscription : 15 avr. 2024 19:32

Re: [calc] Modifier une macro pour masquer automatiquement les graphiques à l'ouverture.

Message par Sebiou »

Bonjour,

Merci pour votre retour.

J'y avais bien pensé, mais j'ai déjà une macro reliée à l’événement "Ouverture du document" :

Code : Tout sélectionner

Sub activeFeuille
Dim Feuille As Object

Feuille = ThisComponent.Sheets(0) ' la valeur 0 correspond au numéro de la première feuille.
ThisComponent.CurrentController.ActiveSheet = Feuille
End Sub
Du coups je ne sais pas trop comment faire (je débute en macro au cas où ça ne ce vois pas :D )

Merci d'avance.
LibreOffice 7.3.7.2M8 sous windows 10 pro.
Avatar de l’utilisateur
Oukcha
RespOOnsable modération
RespOOnsable modération
Messages : 4371
Inscription : 06 oct. 2008 08:03

Re: [calc] Modifier une macro pour masquer automatiquement les graphiques à l'ouverture.

Message par Oukcha »

Bonjour,

Merci de tenir compte des remarques de la modération concernant votre titre (cf. encart dans le premier message du fil de discussion)

Cordialement
                                        
Pour tout savoir sur le fonctionnement de ce forum :arrow: À lire avant tout ! Image
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 26242
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: [calc] Modifier une macro pour masquer automatiquement les graphiques à l'ouverture.

Message par Dude »

Salut,

Tiens compte de la remarque pertinente du modo quant à ton titre.
Sebiou a écrit : ↑25 avr. 2024 10:57J'y avais bien pensé, mais j'ai déjà une macro reliée à l’événement "Ouverture du document"
Il n'y a pas ce branchement dans le document joint.
La qualité des réponses est aussi fonction de ce que tu fournis. :evil:
Sebiou a écrit : ↑25 avr. 2024 10:57 Du coups je ne sais pas trop comment faire
Et bien il va falloir t'investir un peu. Sinon, comment vas-tu maintenir le document s'il évolue ?
Il suffit de copier le pan de code qui masque les graphiques dans ta routine branchée sur "Ouverture du document".

Code : Tout sélectionner

Sub activeFeuille
Dim Feuille As Object

Feuille = ThisComponent.Sheets(0) ' la valeur 0 correspond au numéro de la première feuille.
ThisComponent.CurrentController.ActiveSheet = Feuille
	oPage = ThisComponent.Sheets.getByName("Par Atelier CT").DrawPage
	aGraph = array( "Atelier 1", _
			"Atelier 2", _
			"Atelier 3", _
			"Atelier 4", _
			"Atelier 5", _					
			"Atelier 6")
	'masquons tous les graphiques
	for each sItem in aGraph
		oGraph = FindObjectByName(oPage, sItem)
		oGraph.Visible = false
	next	
End Sub
Si tu ne comprends déjà pas cette logique, tu risques de ne pas aller très loin.
Sebiou
Fraîchement OOthentifié
Messages : 9
Inscription : 15 avr. 2024 19:32

Re: [Calc] Masquer automatiquement les graphiques à l'ouverture

Message par Sebiou »

Bonjour,

J'ai pris note des demandes admins et modérateurs.

Vous pouvez fermer le ticket, je n'y connais rien en macro, j'essaie juste de faire quelques trucs mais je vous fais perdre votre temps.

Merci encore pour l'aide que vous m'aurez fournie.

Bonne journée.
LibreOffice 7.3.7.2M8 sous windows 10 pro.
Avatar de l’utilisateur
micmac
RespOOnsable forum
RespOOnsable forum
Messages : 10152
Inscription : 28 août 2010 08:45

Re: [Calc] Masquer automatiquement les graphiques à l'ouverture

Message par micmac »

Sebiou a écrit : ↑26 avr. 2024 16:32 Vous pouvez fermer le ticket
C'est à vous de le faire.
Pour clore votre sujet :
  • Placez-vous sur le premier message de votre fil de discussion
  • En haut à droite de ce message, cliquez sur le bouton du petit crayon pour modifier.
  • Modifiez le titre du message en cochant l'icône Image et en tapant [Résolu] (respectez la mise en forme donnée) comme illustré ci-dessous :

    Image
Touche Ctrl de Windows = touche cmd⌘ sur Mac
OpenOffice > Outils > Options sur Windows = OpenOffice > Préférences sur macOS