DA = 3 ; la fonction si compare le 3 de DA et le met en S03 dans la colonne « G »
couleur turquoise :
MeR = 41 ; la fonction « si » compare le 41 de MeR et le place en S41 dans la colonne « H »
couleur bleu clair :
TGO = 10 : la fonction si compare le 10 et place le TGO en S10 dans la colonne « i »
j’utilise cette fonction afin de positionner facilement les jalons… cela facilite l’utilisation du fichier par d’autre personnes
toute les autres valeur ne sont pas traitée
de plus, j’avais créé les étiquette manuellement à partir d’une plage ; et supprimé en décochant aussi manuellement les valeurs afin de faire disparaitre les étiquette inutile.
Donc je supprime une étiquette suivant quelle condition ???
Je reste sur ma faim tant que je ne l’ai pas
Sinon utilises un onglet listant tes graph et étiquettes avec un marqueur de suppression qui peut être le fruit d’une formule en fonction des jalons que
mon traitement utilisera
bonjour,
je refais tous les labels avec cette nouvelle macro Test_TdB_Global_et_Zones.xlsm (299,9 Ko)
PS. Comme plaisanterie, maintenant 2 des 3 labels sont ovales, l’autre est rectangle.
Je crois enfin avoir compris ton attente
Mais ce n’est pas avec toutes tes explications que j’ai pu y parvenir au contraire elles m’ont plutôt induit en erreur
Jacquinot_WILL_FREAD t’as proposé de :
« Pour supprimer les étiquettes,
Il suffit de sélectionner une étiquettes, ensuite :
Aller sur le + en haut dans la partie droite du graphique et Décocher « Etiquettes des données » »
Tu lui as répondu ceci ;
« ca j’arrive à le faire.
mais mon fichier comporte 13 onglets avec 1 graph dans chaque onglet et un onglets avec les 13 graph
soit au total 26 graph.
dans l’exemple que j’ai mis en PJ , j’ai simplifié avec 5 graph dans l’onglet de synthèse et 6 onglets avec 1 graph par onglet
je cherche une solution automatisée possiblement à l’ouverture du fichier par exemple. »
Donc dans mon esprit il fallait automatiser sa proposition
Lorsque je la réalise au départ avant de décôcher les Etiquettes de données j’ai ceci :
J’ai donc réalisé un traitement dans cet esprit qui ne t’as pas convenu car ce n’est pas ce résultat que tu cherches et donc pas celui de la décoche comme tu nous l’as décrit comme objectif mais la suppression pour chaque série des éléments qui la composent qui ne sont pas indiqué dans les colonnes G/H/I et non celle-ci entière comme ceci j’espère :
Je suis d’accord avec toi et tu prêches quelqu’un aguerri sur ce point
Je cherche toujours à les éviter mais là pas moyen bug à l’appuis
Si tu veux par exemple utiliser dans un onglet non actif à l’écran la donnée de sa cellule active pas d’autre choix qu’en préambule d’utiliser ces instructions pour rendre celui-ci actif à l’écran et de récupérer cette donnée
Il y a des cas ou le Select et Activate sont malheureusement indispensables crois en mon expérience de très longues années dans ce domaine
J’ai regardé à votre solution, il y a quelque part une erreur, je ne comprends pas ce que vous essayez a faire, mais ceci est la même solution sans activate ou select
Sub Suppression_Etiquettes_2()
With Sheets("Synth_fiches")
liste = "/"
For h = 3 To .Range("B" & Rows.Count).End(xlUp).Row + 1
If .Range("G" & h) <> "" Then
liste = liste & .Range("G" & h) & "/"
End If
If .Range("H" & h) <> "" Then
liste = liste & .Range("H" & h) & "/"
End If
If .Range("I" & h) <> "" Then
liste = liste & .Range("I" & h) & "/"
End If
Next
End With
For Each Sh In Worksheets
If Sh.Name = "Synth_fiches" Or Sh.Name Like "TdB_*" Then
For Each obj In Sh.ChartObjects
For j = 1 To 3
Set sr = obj.Chart.SeriesCollection(j)
For k = 1 To sr.DataLabels.Count
If liste Like "*/" & sr.DataLabels(k).Text & "/*" = False Then
sr.DataLabels(k).Delete
End If
Next
Next
Next
End If
Next
End Sub
« J’ai regardé à votre solution, il y a quelque part une erreur »
Pourquoi ma solution dysfonctionne ?
Avec moi elle fonctionne nickel
Merci de m’en dire plus sur la difficulté
A l’aise …
j’ouvre votre fichier, au lancement votre macro est parcouru, il a supprimé quelque datalabels. Je sauvegarde & ferme, donc je n’ai rien fait, rien changé, seulement les changements de votre macro. Quand je réouvre, il y a
Test_TdB_Global_et_Zones (8).xlsm (243,5 Ko)
Voici un fichier avec une macro qui fonctionne et sans select ou activate.
Le problème, c’est qu’on supprime les étiquettes des points qui n’ont pas un contenu. Mais comme le fichier est dynamique, une semaine plus tard les étiquettes peuvent se déplacer et alors, ils sont disparus
Effectivement après un premier nettoyage si celui-ci est effectué et enregistré à l’ouverture suivante le traitement plante n’ayant plus aucune suppression
J’ai rajouté une petite ligne de code pour éviter cette situation de blocage et la plus de souci
Merci à toi pour cette remonté
bonsoir,
désolé de mon retour tardif
et encore une fois mes excuses FFO pour les détails insuffisant concernant mon besoin.
comme précisé, d’un projet à l’autre, les date de semaine changent pour les jalons.
sur vos 2 versions le graph global plante et supprime les étiquettes des bâton vert (changement de semaine) ou les mets toutes (si excecution macro etiquette forcée)
pour les autres graph ca fonctionne impec
Bonsoir
Enfin enfin je progresse cela n’a pas été sans mal
« sur vos 2 versions le graph global plante et supprime les étiquettes des bâton vert »
Rien compris
Chez moi rien ne plante
Le traitement s’exécute uniquement à l’ouverture du fichier de manière automatique et sans intervention de l’utilisateur juste à ouvrir celui-ci c’est tout
Ce traitement nettoie les series de tous les graphs en fonction des données des colonnes G/H/I
Qu’est ce que les étiquettes des batons vert ???
Si c’est la partie basse avec les colonnes du graphique en vert la serie n’est pas supprimée tu peux le constater sur ma copie transmise obtenu à l’ouverture ici :
Bonjour,
FFO, dans votre solution le déplacement des jalons fait supprimer l’étiquette sur le graph et elle ne reviens pas meme apres fermeture/ouverture du fichier… j’ai meme un bug VBA
Bonjour
Merci pour ce retour
Si tu as la solution qui te convient inutile pour moi d’aller plus loin surtout dans ce contexte où il est pas facile de ce comprendre peut-être mon esprit un peu tordu désolé
Bonne utilisation