[Excel] Macro Graphique Camenberts
Résolu/Fermé
elglouton
Messages postés
189
Date d'inscription
dimanche 19 avril 2009
Statut
Membre
Dernière intervention
11 novembre 2022
-
Modifié par elglouton le 7/05/2011 à 10:15
elglouton Messages postés 189 Date d'inscription dimanche 19 avril 2009 Statut Membre Dernière intervention 11 novembre 2022 - 13 mai 2011 à 09:07
elglouton Messages postés 189 Date d'inscription dimanche 19 avril 2009 Statut Membre Dernière intervention 11 novembre 2022 - 13 mai 2011 à 09:07
A voir également:
- [Excel] Macro Graphique Camenberts
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Liste déroulante excel - Guide
- Graphique excel - Guide
- Si et excel - Guide
- Changer carte graphique - Guide
10 réponses
ccm81
Messages postés
10903
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
19 novembre 2024
2 428
8 mai 2011 à 17:37
8 mai 2011 à 17:37
bonjour à tous
une tentative avec macros
http://www.cijoint.fr/cjlink.php?file=cj201105/cijyEGFkBT.xls
bonne suite
une tentative avec macros
http://www.cijoint.fr/cjlink.php?file=cj201105/cijyEGFkBT.xls
bonne suite
elglouton
Messages postés
189
Date d'inscription
dimanche 19 avril 2009
Statut
Membre
Dernière intervention
11 novembre 2022
1
Modifié par elglouton le 6/05/2011 à 19:58
Modifié par elglouton le 6/05/2011 à 19:58
Personne çà ne doit pas être possible c'est bien dommage...
Un exemple tout de meme
https://www.excel-downloads.com/forums/forum-excel.7/
Un exemple tout de meme
https://www.excel-downloads.com/forums/forum-excel.7/
pépé35530
Messages postés
2942
Date d'inscription
vendredi 1 mai 2009
Statut
Membre
Dernière intervention
19 mars 2016
1 385
6 mai 2011 à 20:41
6 mai 2011 à 20:41
Bonjour,
Quand tu cliques une première fois sur tes étiquettes, elles sont toutes sélectionnées. Si tu recliques alors sur l'une d'elle, seule cette dernière est active. Tu peux alors la supprimer.
A+
pépé
Quand tu cliques une première fois sur tes étiquettes, elles sont toutes sélectionnées. Si tu recliques alors sur l'une d'elle, seule cette dernière est active. Tu peux alors la supprimer.
A+
pépé
tontong
Messages postés
2567
Date d'inscription
mercredi 3 février 2010
Statut
Membre
Dernière intervention
20 novembre 2024
1 059
7 mai 2011 à 15:29
7 mai 2011 à 15:29
Bonjour,
Il y a une solution mais elle me parait complexe par rapport à la proposition de pépé 35530. Je ne suis pas sûr de pouvoir l'expliquer dans tous ses détails.
Dans les grandes lignes:
1* Créer par des formules un tableau secondaire qui élimine les valeurs nulles et vides.
2* Nommer les champs de ce tableau secondaire avec en référence une fonction DECALER. Ceci permet d'avoir des champs ajustés et dynamiques.
Pour avoir lu vos questions précédentes voici quelques principes que j'essaye d'appliquer pour avoir des graphiques "parlants":
Pas plus de 6 parts (8 grand max) dans un camembert. ;-)
Une dizaine de données pour un "secteur +histogramme"
Au delà il ne reste que les histogrammes dont l'axe Ox doit présenter une notion d'ordre: ordre chronologique, ordre alphabétique, ordre des valeurs triées, ordre logique (du producteur à l'utilisateur par exemple). Tout ceci n'est qu'un avis personnel!
Il y a une solution mais elle me parait complexe par rapport à la proposition de pépé 35530. Je ne suis pas sûr de pouvoir l'expliquer dans tous ses détails.
Dans les grandes lignes:
1* Créer par des formules un tableau secondaire qui élimine les valeurs nulles et vides.
2* Nommer les champs de ce tableau secondaire avec en référence une fonction DECALER. Ceci permet d'avoir des champs ajustés et dynamiques.
Pour avoir lu vos questions précédentes voici quelques principes que j'essaye d'appliquer pour avoir des graphiques "parlants":
Pas plus de 6 parts (8 grand max) dans un camembert. ;-)
Une dizaine de données pour un "secteur +histogramme"
Au delà il ne reste que les histogrammes dont l'axe Ox doit présenter une notion d'ordre: ordre chronologique, ordre alphabétique, ordre des valeurs triées, ordre logique (du producteur à l'utilisateur par exemple). Tout ceci n'est qu'un avis personnel!
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ccm81
Messages postés
10903
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
19 novembre 2024
2 428
10 mai 2011 à 16:59
10 mai 2011 à 16:59
re
ton fichier est en effet très lourd !!
comme les données des graphiques sont calculées, il y a, du moins je crois, avec worksheet_change un pb avec la MAJ des etiquettes
je te suggere de mettre un bouton (controle activeX) dans chaque feuille où il y a des graphiques à traiter et de lui affecter le code comme ci-dessous
où les deux procedures RemetEtiquettes et SupprimeEtiquetteNulle sont celles que tu as déjà
RQ. je n'ai pas essayé dans ton classeur
bonne suite
ton fichier est en effet très lourd !!
comme les données des graphiques sont calculées, il y a, du moins je crois, avec worksheet_change un pb avec la MAJ des etiquettes
je te suggere de mettre un bouton (controle activeX) dans chaque feuille où il y a des graphiques à traiter et de lui affecter le code comme ci-dessous
Private Sub CommandButton2_Click() Dim nbgr As Long, nugr As Long nbgr = ActiveSheet.ChartObjects.Count For nugr = 1 To nbgr Call RemetEtiquettes(nugr) Call SupprimeEtiquetteNulle(nugr) Next nugr End Sub
où les deux procedures RemetEtiquettes et SupprimeEtiquetteNulle sont celles que tu as déjà
RQ. je n'ai pas essayé dans ton classeur
bonne suite
elglouton
Messages postés
189
Date d'inscription
dimanche 19 avril 2009
Statut
Membre
Dernière intervention
11 novembre 2022
1
10 mai 2011 à 18:18
10 mai 2011 à 18:18
J'ai ajouter le bouton qui fonctionne tres bien dans le classeur que tu m'avaiss proposer au click il met les parametres a jour mais dans mon classeur il provoque une erreur 1004
sur la ligne en gras "nbpoints="
A quoi correspond .SeriesCollection(1)
Desoler je ne suis pas tres affuté en Macro
Option Explicit
Public Sub SupprimeEtiquetteNulle(NumGraph)
Dim nbpoints As Long, nupoint As Long
Dim ValY
With ChartObjects(NumGraph).Chart
nbpoints = .SeriesCollection(1).Points.Count
ValY = .SeriesCollection(1).Values
For nupoint = 1 To nbpoints
If ValY(nupoint) = 0 Then
.SeriesCollection(1).Points(nupoint).DataLabel.Delete
End If
Next nupoint
End With
End Sub
Public Sub RemetEtiquettes(NumGraph)
ChartObjects(NumGraph).Chart.ApplyDataLabels ShowCategoryName:=True, HasLeaderLines:=True
End Sub
Private Sub CommandButton2_Click()
Dim nbgr As Long, nugr As Long
nbgr = ActiveSheet.ChartObjects.Count
For nugr = 1 To nbgr
Call RemetEtiquettes(nugr)
Call SupprimeEtiquetteNulle(nugr)
Next nugr
End Sub
sur la ligne en gras "nbpoints="
A quoi correspond .SeriesCollection(1)
Desoler je ne suis pas tres affuté en Macro
Option Explicit
Public Sub SupprimeEtiquetteNulle(NumGraph)
Dim nbpoints As Long, nupoint As Long
Dim ValY
With ChartObjects(NumGraph).Chart
nbpoints = .SeriesCollection(1).Points.Count
ValY = .SeriesCollection(1).Values
For nupoint = 1 To nbpoints
If ValY(nupoint) = 0 Then
.SeriesCollection(1).Points(nupoint).DataLabel.Delete
End If
Next nupoint
End With
End Sub
Public Sub RemetEtiquettes(NumGraph)
ChartObjects(NumGraph).Chart.ApplyDataLabels ShowCategoryName:=True, HasLeaderLines:=True
End Sub
Private Sub CommandButton2_Click()
Dim nbgr As Long, nugr As Long
nbgr = ActiveSheet.ChartObjects.Count
For nugr = 1 To nbgr
Call RemetEtiquettes(nugr)
Call SupprimeEtiquetteNulle(nugr)
Next nugr
End Sub
ccm81
Messages postés
10903
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
19 novembre 2024
2 428
10 mai 2011 à 18:39
10 mai 2011 à 18:39
re
nbpoints = .SeriesCollection(1).Points.Count
donne le nombre de points de la série de données
dans ta feuille graph il y a des graphiques sans serie de données
le pb vient certainement de là!
donc
Etape 1. vérifies avec le bouton qui permet de voir quels sont les graphiques a traiter et quelle série de donnée leur est attachée
Etape 2. modifier eventuellement la procedure (du bouton)pour ne traiter que les "bons graphs"
RQ. sinon, il y a une solution : gérer l'erreur produite dans ce cas avec un "on error goto"
et
bonne suite
nbpoints = .SeriesCollection(1).Points.Count
donne le nombre de points de la série de données
dans ta feuille graph il y a des graphiques sans serie de données
le pb vient certainement de là!
donc
Etape 1. vérifies avec le bouton qui permet de voir quels sont les graphiques a traiter et quelle série de donnée leur est attachée
Etape 2. modifier eventuellement la procedure (du bouton)pour ne traiter que les "bons graphs"
RQ. sinon, il y a une solution : gérer l'erreur produite dans ce cas avec un "on error goto"
Public Sub SupprimeEtiquetteNulle(NumGraph) Dim nbpoints As Long, nupoint As Long Dim ValY On Error GoTo fin With ChartObjects(NumGraph).Chart nbpoints = .SeriesCollection(1).Points.Count ValY = .SeriesCollection(1).Values For nupoint = 1 To nbpoints If ValY(nupoint) = 0 Then .SeriesCollection(1).Points(nupoint).DataLabel.Delete End If Next nupoint End With fin: End Sub
et
Public Sub RemetEtiquettes(NumGraph) On Error GoTo fin ChartObjects(NumGraph).Chart.ApplyDataLabels ShowCategoryName:=True, HasLeaderLines:=True fin: End Sub
bonne suite
elglouton
Messages postés
189
Date d'inscription
dimanche 19 avril 2009
Statut
Membre
Dernière intervention
11 novembre 2022
1
Modifié par elglouton le 10/05/2011 à 19:39
Modifié par elglouton le 10/05/2011 à 19:39
Et ba voila cela fonctionne bien maintenant pour ma feuille recap par machine
Je pensais que je pouvais traiter que la feuille recap par machine dans un premier temps.
Par contre sachant que mes graph de la feuille "graph" sont les meme que ceux de la feuille "recap par machine" je me suis servis de la meme plage de donnés pour les creer.
Hors ces graph de la feuille "graph n'ont pas les meme nom et je ne pourrais donc pas le faire sur cette page a moin de recréer de nouvelles plage pour cette feuille correspondante au nom des graps present sur cette feuille...
Ou sinon est-ce possible de renommer un graph je n'y arrive pas...
Je pensais que je pouvais traiter que la feuille recap par machine dans un premier temps.
Par contre sachant que mes graph de la feuille "graph" sont les meme que ceux de la feuille "recap par machine" je me suis servis de la meme plage de donnés pour les creer.
Hors ces graph de la feuille "graph n'ont pas les meme nom et je ne pourrais donc pas le faire sur cette page a moin de recréer de nouvelles plage pour cette feuille correspondante au nom des graps present sur cette feuille...
Ou sinon est-ce possible de renommer un graph je n'y arrive pas...
ccm81
Messages postés
10903
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
19 novembre 2024
2 428
10 mai 2011 à 20:28
10 mai 2011 à 20:28
re
dans la mesure où tu n'as qu'une feuille de plus a traiter (la feuille graph)
je crois que le plus simple, c'est de mettre un bouton dans la feuille graph, de lui affecter le code du bouton de la feuille recap par machine
puis de recopier dans le module de la feuille graph, les deux procedures Remet et Supprime
ce qui t'oblgera a faire un clic dans chacune des deux feuilles
si c'est trop genant, on peut essayer de s'y prendre autrement
dans la mesure où tu n'as qu'une feuille de plus a traiter (la feuille graph)
je crois que le plus simple, c'est de mettre un bouton dans la feuille graph, de lui affecter le code du bouton de la feuille recap par machine
puis de recopier dans le module de la feuille graph, les deux procedures Remet et Supprime
ce qui t'oblgera a faire un clic dans chacune des deux feuilles
si c'est trop genant, on peut essayer de s'y prendre autrement
ccm81
Messages postés
10903
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
19 novembre 2024
2 428
11 mai 2011 à 08:48
11 mai 2011 à 08:48
re
1. dans le module de la feuille qui contient les données
à toi de modifier/ajouter les noms des feuilles a traiter
2. Puis insertion/nouveau module
De cette façon on passe les noms des feuilles à traiter à la procedure Traite(NF) qui elle meme passe le nom de la feuille aux procedures Remet et Supprime
bonne suite
1. dans le module de la feuille qui contient les données
Option Explicit Private Sub CommandButton1_Click() Dim nugr As Long nugr = Range("nugr").Value ActiveSheet.ChartObjects(nugr).Select End Sub Private Sub CommandButton2_Click() Call Traite("Feuil1") Call Traite("F1") Call Traite("F2") End Sub
à toi de modifier/ajouter les noms des feuilles a traiter
2. Puis insertion/nouveau module
Option Explicit Public Sub SupprimeEtiquetteNulle(NomFeuille, NumGraph) Dim nbpoints As Long, nupoint As Long Dim ValY On Error GoTo fin With Sheets(NomFeuille).ChartObjects(NumGraph).Chart nbpoints = .SeriesCollection(1).Points.Count ValY = .SeriesCollection(1).Values For nupoint = 1 To nbpoints If ValY(nupoint) = 0 Then .SeriesCollection(1).Points(nupoint).DataLabel.Delete End If Next nupoint End With fin: End Sub Public Sub RemetEtiquettes(NomFeuille, NumGraph) On Error GoTo fin Sheets(NomFeuille).ChartObjects(NumGraph).Chart.ApplyDataLabels ShowCategoryName:=True, HasLeaderLines:=True fin: End Sub Public Sub Traite(NF As String) Dim nbgr As Long, nugr As Long nbgr = Sheets(NF).ChartObjects.Count For nugr = 1 To nbgr Call RemetEtiquettes(NF, nugr) Call SupprimeEtiquetteNulle(NF, nugr) Next nugr End Sub
De cette façon on passe les noms des feuilles à traiter à la procedure Traite(NF) qui elle meme passe le nom de la feuille aux procedures Remet et Supprime
bonne suite
elglouton
Messages postés
189
Date d'inscription
dimanche 19 avril 2009
Statut
Membre
Dernière intervention
11 novembre 2022
1
11 mai 2011 à 09:32
11 mai 2011 à 09:32
Merci pour tes reponses et solution tres rapide sependant je ne suis pas encore tres àlaise avec les macro et j'ai encore une erreur que je ne sais pas traiter sur la ligne
nugr = Range("nugr").Value
"la methode 'range' de l'object Worlsheet a echoué.
Comment la resoudre
nugr = Range("nugr").Value
"la methode 'range' de l'object Worlsheet a echoué.
Comment la resoudre
ccm81
Messages postés
10903
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
19 novembre 2024
2 428
11 mai 2011 à 09:50
11 mai 2011 à 09:50
re
Cette cellule (nommée "nugr" dans la feuille) est utilisée par le bouton qui permet de reperer les graphiques selon la valeur (1, 2, ...) de cette cellule. En fait ce bouton servait dans l'option choisie au départ d'utiliser worksheet_change, mais ce n'est plus d'actualité.
Je suppose que tu n'utilises plus ce bouton, donc tu peux supprimer la procedure ou du moins la désactiver en mettant toutes les lignes en commentaire (ajouter un ' devant chaque ligne)
bonne suite
Cette cellule (nommée "nugr" dans la feuille) est utilisée par le bouton qui permet de reperer les graphiques selon la valeur (1, 2, ...) de cette cellule. En fait ce bouton servait dans l'option choisie au départ d'utiliser worksheet_change, mais ce n'est plus d'actualité.
Je suppose que tu n'utilises plus ce bouton, donc tu peux supprimer la procedure ou du moins la désactiver en mettant toutes les lignes en commentaire (ajouter un ' devant chaque ligne)
bonne suite
elglouton
Messages postés
189
Date d'inscription
dimanche 19 avril 2009
Statut
Membre
Dernière intervention
11 novembre 2022
1
11 mai 2011 à 11:49
11 mai 2011 à 11:49
C'est parfait cela fonctionne a merveille je te remercie énormément pour le temps que tu a pris pour ce problème.
Pense tu qu'il serai possible d'appliquer la mémé chose pour les titre des graph si toute les valeur de la plage du graph sont a zéro que le titres soit retiré...
Je sais j'abuse tu as déjà fait un très bon travail et je comprendrai que tu ne réponde pas a cette dernière question
Encore un grand merci pour tous vous étés très réactifs et avez toujours une bonne réponse sous les doigt bonne continuation.
Pense tu qu'il serai possible d'appliquer la mémé chose pour les titre des graph si toute les valeur de la plage du graph sont a zéro que le titres soit retiré...
Je sais j'abuse tu as déjà fait un très bon travail et je comprendrai que tu ne réponde pas a cette dernière question
Encore un grand merci pour tous vous étés très réactifs et avez toujours une bonne réponse sous les doigt bonne continuation.
ccm81
Messages postés
10903
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
19 novembre 2024
2 428
11 mai 2011 à 14:29
11 mai 2011 à 14:29
re
c'est posible, on compte le nb de pts nuls, et s'il est egal au nb de points on suuprime le titre
bon après midi
c'est posible, on compte le nb de pts nuls, et s'il est egal au nb de points on suuprime le titre
Public Sub SupprimeEtiquetteNulle(NomFeuille, NumGraph) Dim nbpoints As Long, nupoint As Long, nbpointsnuls As Long Dim ValY On Error GoTo fin nbpointsnuls = 0 With Sheets(NomFeuille).ChartObjects(NumGraph).Chart nbpoints = .SeriesCollection(1).Points.Count ValY = .SeriesCollection(1).Values For nupoint = 1 To nbpoints If ValY(nupoint) = 0 Then .SeriesCollection(1).Points(nupoint).DataLabel.Delete nbpointsnuls = nbpointsnuls + 1 End If Next nupoint If nbpointsnuls = nbpoints Then .HasTitle = False End If End With fin: End Sub
bon après midi
elglouton
Messages postés
189
Date d'inscription
dimanche 19 avril 2009
Statut
Membre
Dernière intervention
11 novembre 2022
1
Modifié par elglouton le 12/05/2011 à 20:53
Modifié par elglouton le 12/05/2011 à 20:53
Merci,
Désoler pour la réponse tardive.
Cela fonctionne nikel cependant toujours dans le même but de pouvoir remetre les titre quand le graph reçoit des valeurs...
J'ai tenté de rajouter une ligne dans
Public Sub RemetEtiquettes(NomFeuille, NumGraph)
On Error GoTo fin
Sheets(NomFeuille).ChartObjects(NumGraph).Chart.ApplyDataLabels ShowCategoryName:=True, HasLeaderLines:=True
Sheets(NomFeuille).ChartObjects(NumGraph).Chart.HasTitle ShowCategoryName:=True, HasLeaderLines:=True
fin:
End Sub
Mais ça doit pas être ça car rien n'y fait du coup encore une tite question comment faire pour faire réapparaitre les titre quand les données sont différente de zéro
Finalement j'ai fait comme ça et ca a l'ai de fonctionner
Public Sub SupprimeEtiquetteNulle(NomFeuille, NumGraph)
Dim nbpoints As Long, nupoint As Long, nbpointsnuls As Long
Dim ValY
On Error GoTo fin
nbpointsnuls = 0
With Sheets(NomFeuille).ChartObjects(NumGraph).Chart
nbpoints = .SeriesCollection(1).Points.Count
ValY = .SeriesCollection(1).Values
For nupoint = 1 To nbpoints
If ValY(nupoint) = 0 Then
.SeriesCollection(1).Points(nupoint).DataLabel.Delete
nbpointsnuls = nbpointsnuls + 1
End If
Next nupoint
If Not nbpointsnuls = nbpoints Then
.HasTitle = True
End If
If nbpointsnuls = nbpoints Then
.HasTitle = False
End If
End With
fin:
End Sub
Je ne sais pas si c'est bien
J'ai cru que c'était bon mais malheureusement quand les titres reviennent ils sont réinitialisés
Ca revient à "Titre du graphique" je perd donc le titre de mon graph y a t'il un moyen que cela ne le face pas
Désoler pour la réponse tardive.
Cela fonctionne nikel cependant toujours dans le même but de pouvoir remetre les titre quand le graph reçoit des valeurs...
J'ai tenté de rajouter une ligne dans
Public Sub RemetEtiquettes(NomFeuille, NumGraph)
On Error GoTo fin
Sheets(NomFeuille).ChartObjects(NumGraph).Chart.ApplyDataLabels ShowCategoryName:=True, HasLeaderLines:=True
Sheets(NomFeuille).ChartObjects(NumGraph).Chart.HasTitle ShowCategoryName:=True, HasLeaderLines:=True
fin:
End Sub
Mais ça doit pas être ça car rien n'y fait du coup encore une tite question comment faire pour faire réapparaitre les titre quand les données sont différente de zéro
Finalement j'ai fait comme ça et ca a l'ai de fonctionner
Public Sub SupprimeEtiquetteNulle(NomFeuille, NumGraph)
Dim nbpoints As Long, nupoint As Long, nbpointsnuls As Long
Dim ValY
On Error GoTo fin
nbpointsnuls = 0
With Sheets(NomFeuille).ChartObjects(NumGraph).Chart
nbpoints = .SeriesCollection(1).Points.Count
ValY = .SeriesCollection(1).Values
For nupoint = 1 To nbpoints
If ValY(nupoint) = 0 Then
.SeriesCollection(1).Points(nupoint).DataLabel.Delete
nbpointsnuls = nbpointsnuls + 1
End If
Next nupoint
If Not nbpointsnuls = nbpoints Then
.HasTitle = True
End If
If nbpointsnuls = nbpoints Then
.HasTitle = False
End If
End With
fin:
End Sub
Je ne sais pas si c'est bien
J'ai cru que c'était bon mais malheureusement quand les titres reviennent ils sont réinitialisés
Ca revient à "Titre du graphique" je perd donc le titre de mon graph y a t'il un moyen que cela ne le face pas
ccm81
Messages postés
10903
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
19 novembre 2024
2 428
Modifié par ccm81 le 12/05/2011 à 21:39
Modifié par ccm81 le 12/05/2011 à 21:39
re
aïe, c'est vrai que c'est un peu plus délicat.
.Hastitle = True est la bonne propriété mais si ça autorise le titre, ça ne le récupère pas
Option1. attribuer au nom de la serie de chaque graphique le titre souhaité, ce que tu n'as pas fait (clic sur le graphique/données source/series/nom) puis modifier RemetEtiquettes comme ci dessous
Option2. faire quelque part une liste des titres selon les n° de graphique
RQ. dans les deux cas, il va bien falloir les ecrires ces titres, donc l'option 1 est la plus propre
bonne suite
aïe, c'est vrai que c'est un peu plus délicat.
.Hastitle = True est la bonne propriété mais si ça autorise le titre, ça ne le récupère pas
Option1. attribuer au nom de la serie de chaque graphique le titre souhaité, ce que tu n'as pas fait (clic sur le graphique/données source/series/nom) puis modifier RemetEtiquettes comme ci dessous
Option2. faire quelque part une liste des titres selon les n° de graphique
RQ. dans les deux cas, il va bien falloir les ecrires ces titres, donc l'option 1 est la plus propre
If nbpointsnuls = nbpoints Then .HasTitle = False Else .HasTitle = True .ChartTitle.Characters.Text = .SeriesCollection(1).Name End If
bonne suite
elglouton
Messages postés
189
Date d'inscription
dimanche 19 avril 2009
Statut
Membre
Dernière intervention
11 novembre 2022
1
Modifié par elglouton le 12/05/2011 à 22:14
Modifié par elglouton le 12/05/2011 à 22:14
je n'arrive pas a trouver sous 2007 au boulot je suis sous 2003 et je testerais donc demain merci pour la réponse
Oupsss c'est bon je viens de trouver je vais donc tester de suite
Et bien Voila une dernière modifications de commentaire pour dire
Un grand merci a ccm81 qui suivis ce dossier je pense que je vais pouvoir mettre Résolus
J'ai encore appris des tas de truc même si je comprend encore pas tout merci Bcp pour tout encore une fois.
Oupsss c'est bon je viens de trouver je vais donc tester de suite
Et bien Voila une dernière modifications de commentaire pour dire
Un grand merci a ccm81 qui suivis ce dossier je pense que je vais pouvoir mettre Résolus
J'ai encore appris des tas de truc même si je comprend encore pas tout merci Bcp pour tout encore une fois.
elglouton
Messages postés
189
Date d'inscription
dimanche 19 avril 2009
Statut
Membre
Dernière intervention
11 novembre 2022
1
Modifié par elglouton le 13/05/2011 à 09:46
Modifié par elglouton le 13/05/2011 à 09:46
Et bien au fait je revient vers toi je viens de le tester sous Excel 2003 et rien ne ce passe y a t'il une action speciale a faire "Probleme de convertion"
Je pense que cela vien de l'appelation des Graph sous Excel 2003
J'ai enregistrer en verssion 97-2003 et ça à l'air bon sauf la taille du fichier qui fait pres de 56 000 ko....
Merci
Je pense que cela vien de l'appelation des Graph sous Excel 2003
J'ai enregistrer en verssion 97-2003 et ça à l'air bon sauf la taille du fichier qui fait pres de 56 000 ko....
Merci
8 mai 2011 à 18:31
Ça a l'air bien cette macro. C'est surtout plus facile à utiliser que ce que j'ai fait.
Je ne porte aucune appréciation sur la macro elle-même. Je suis nul dans ce domaine.
Par contre j'ai fait fonctionner un peu sans dénicher un bug.
Bonne soirée.
8 mai 2011 à 19:56
Je l'ai copier dans ma feuille graph et tenter de renommer mes différente plage de graph mais cela ne fonctionne pas...
Je vous met mon fichier pour exemple
8 mai 2011 à 20:06
8 mai 2011 à 21:31
1. comme tu as plusieurs graphiques concernés par les etiquettes "nulles", tu nommes les plages correspondantes dans ta feuille (c'est plus commode) et tu complete le code de la procedure Change comme dans l'exemple ci-dessous, où j'ai traité un graphique 2 attaché à la "plage2"
etc ...
ici 1 est un numéro de graphique
Call RemetEtiquettes(1)
Call SupprimeEtiquetteNulle(1)
2. je ne peux pas lire ton fichier, je suis resté à excel 2003! donc, si tu le renvoies, fais le au format excel 2003
3. tu copies le code dans le module de ta feuille, le pb, c'est qu'il te faut bien faire correspondre les numéros de graphiques et les plages correspondantes.
Je t'ai mis un bouton permettant de reperer les numéros de tes graphiques
4. salutations a tontong
5. un exemple avec 2 graphiques dans la feuille
http://www.cijoint.fr/cjlink.php?file=cj201105/cij4Q3lP0i.xls
bonne suite
9 mai 2011 à 18:26
En espérant que cela soit possible avec ce type de données en effet les graph proviennent de données qui changent par le biais d'une formule en feuille "recap par machine la macro fonctionne très bien quand je change manuellement mais pas avec les modifs par le biais de la formule.
http://www.cijoint.fr/cjlink.php?file=cj201105/cij1nLG7Wr.zip