EXCEL : suppr étiquettes de données d'un graphe si valeur nulle

Résolu/Fermé
Camlepinay Messages postés 66 Date d'inscription lundi 20 janvier 2014 Statut Membre Dernière intervention 25 février 2024 - 15 janv. 2017 à 19:14
Camlepinay Messages postés 66 Date d'inscription lundi 20 janvier 2014 Statut Membre Dernière intervention 25 février 2024 - 24 janv. 2017 à 15:18
Bonjour,

J'ai créé un graphique en camembert répertoriant mes catégories de dépenses du mois et leur montant respectif. J'ai mis en étiquettes de données : le nom de la catégorie, le montant, et le pourcentage par rapport au total des dépenses. Pour ça pas de souci.



Cependant, je souhaite que les étiquettes de données n'apparaissent pas si la valeur correspondante de mon tableau est nulle (par exemple, si je n'ai aucune dépense dans la catégorie "trajets").

Je ne veux pas obtenir cela :



J'ai trouvé la solution grâce à cet article : https://www.lecfomasque.com/excel-supprimer-les-etiquettes-a-zero-dans-vos-graphiques/
Il me suffit de renseigner dans "Code de format" le code suivant : # ##0 €;(# ##0 €);

Mais le problème, c'est que ça ne marche que si, dans mes étiquettes de données, je ne renseigne que le montant. Mon étiquette de donnée disparaît bel et bien si le montant est nul. Mais si je souhaite voir apparaître dans mes étiquettes de données, le nom de la catégorie et le pourcentage représenté, en plus du montant, ces deux derniers ne disparaissent pas, et le pourcentage s'affiche alors en "€"...

Étiquette de données avec renseigné uniquement le montant :



Étiquette de données avec renseigné le nom de catégorie, le montant, et le pourcentage (c'est donc toujours le même code) :



Existe-t-il une solution pour faire disparaître l'ensemble du texte des mes étiquettes de données, dans le cas d'une valeur nulle, ou bien peut-être que j'en demande trop au logiciel ?

Merci d'avance pour votre aide !

PS : pardonnez la longueur de mon post, mais normalement avec ça vous avez toutes les clés en main pour bien comprendre :)

A voir également:

7 réponses

Raymond PENTIER Messages postés 58395 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 095
16 janv. 2017 à 05:26
Bonjour.

Rassure-toi, la solution sera beaucoup plus courte : Il n'y a pas de solution automatique ; il te faudra enlever ces étiquettes une à une ...
1
Camlepinay Messages postés 66 Date d'inscription lundi 20 janvier 2014 Statut Membre Dernière intervention 25 février 2024 3
16 janv. 2017 à 22:12
Ah oui mais si je les enlève une à une, lorsque la valeur devient autre que nulle, mon étiquette est disparu de chez disparue, elle ne réapparaîtra pas ^^ !
1
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
16 janv. 2017 à 17:44
Bonjour

Salut Raymond, mais si, c'est possible ...... avec une macro
http://www.cjoint.com/c/GAqqQVZ4doT

Alt-F11 pour accéder au code

Cdlmnt
0
Raymond PENTIER Messages postés 58395 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 095
16 janv. 2017 à 17:52
Salut, ccm81.

C'est que le demandeur semblait rechercher une solution sans programmation (cf le lien signalé), et que de toutes façons je ne pratique toujours pas VBA ...

Passe une bonne journée.
0
tontong Messages postés 2549 Date d'inscription mercredi 3 février 2010 Statut Membre Dernière intervention 23 avril 2024 1 054
16 janv. 2017 à 20:32
Bonjour à tous,
J'avais un petit résumé en réserve:
http://www.cjoint.com/c/GAqtDYRUL4c
0
Camlepinay Messages postés 66 Date d'inscription lundi 20 janvier 2014 Statut Membre Dernière intervention 25 février 2024 3
16 janv. 2017 à 22:32
Waw, merci à vous deux pour vos solutions !

En effet j'avais précisé à l'origine dans mon post que je recherchais une solution si possible sans macro, étant vraiment trop novice avec ce logiciel. Mais j'ai corrigé après coup en me disant qu'après tout, pourquoi pas essayer, s'il ne s'agit que de recopier un code tout prêt !

Merci à toi tontong, il semble donc exister une solution sans recourir à un macro alors. Cependant, je t'avoue que de par mon faible niveau de connaissance sur le logiciel, j'ai bien du mal à comprendre ton résumé, quoique bien réalisé, donc je vais certainement tester la macro de ccm81 déjà ;)

Donc là comment je fais pour appliquer ta macro à mon fichier ? Je ne sais pas du tout les utiliser :)

J'ai deux autres questions à propos de deux autres problèmes que j'ai rencontré en créant mon tableur, je peux les poser à la suite ou bien mieux vaut que je créé deux autres posts, afin que ce soit facilement retrouvable par d'autres personnes qui rencontreraient les mêmes problèmes ?

Merci pour votre aide
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
Modifié par ccm81 le 16/01/2017 à 23:10
Pour utiliser la macro dans ton fichier
1. Avec le mien
- Alt-F11 pour accéder au code
- Sélectionner tout le code/Copier
2. Avec le tien,
- places toi dans la feuille qui contient le graphique et les données
- Alt-F11 pour accéder au module de la feuille
- Coller tout le code
- En début de code tu as la constante
Const plagecat = "$B$2:$B$5"
qui indique la plage des données categorie, tu modifies l'adresse
3. Retour à la feuille
- enregistrer le fichier avec l'extension .xlsm (Enregistrer sous/Type/ ...

4. Si tu dois allonger ton tableau (et ton graphique)
- tu mets à jour les données source du graphique
- tu modifie la constante plagecat dans le code

Si les autres questions sont différentes du sujet actuel, ouvres en un autre.

RQ. Il serait bon que tu joignes à ta question un fichier exemple.

Cdlmnt
0
Camlepinay Messages postés 66 Date d'inscription lundi 20 janvier 2014 Statut Membre Dernière intervention 25 février 2024 3
23 janv. 2017 à 15:45
Merci pour ton aide, mais je n'y arrive pas...
J'ai copié collé le code, ouvert un nouveau code dans le fichier qui m'intéresse, adapté la plage de cellules, enregistré sous en tant que "Fichier Excel (prenant en charge les macros)", mais ça ne fait pas comme dans ton fichier.
Sûr que je me plante quelque part, mais je ne suis assez calée pour comprendre où :/

https://www.cjoint.com/c/GAxoOY3KLbn
0
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
23 janv. 2017 à 17:01
Voilà, voilà
http://www.cjoint.com/c/GAxqa1E5Irg

Cdlmnt
0
Camlepinay Messages postés 66 Date d'inscription lundi 20 janvier 2014 Statut Membre Dernière intervention 25 février 2024 3
24 janv. 2017 à 15:18
Yes, merci, ça fonctionne à la perfection ! J'ai appris plein de choses, merci beaucoup ;)
0