Amélioration d'un graphique sous EXCEL
Résolu
GUGUSSE2
Messages postés
72
Date d'inscription
Statut
Membre
Dernière intervention
-
ccm81 Messages postés 10909 Date d'inscription Statut Membre Dernière intervention -
ccm81 Messages postés 10909 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Amélioration d'un graphique sous EXCEL
- Liste déroulante excel - Guide
- Comment faire un graphique sur excel - Guide
- Changer carte graphique - Guide
- Graphique camembert excel - Guide
- Word et excel gratuit - Guide
17 réponses
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour ccm81,
Voilà le fichier converti. Mais Excel m'a informé que les formules avaient trop de niveau d'imbrication. En ce qui concerne mon problème, cela ne devrait pas avoir d'incidence. Si tu as des problèmes liés à cela, tant pis pour moi !
https://www.cjoint.com/?BIfuSiPK5UE
Cordialement,
GUGUSSE.
Voilà le fichier converti. Mais Excel m'a informé que les formules avaient trop de niveau d'imbrication. En ce qui concerne mon problème, cela ne devrait pas avoir d'incidence. Si tu as des problèmes liés à cela, tant pis pour moi !
https://www.cjoint.com/?BIfuSiPK5UE
Cordialement,
GUGUSSE.
Bonjour,
Je n'avais pas fait attention que, lorsque tu ouvrirait le fichier, il serait initialisé !
J'ai inhibé la fonction et ainsi les valeurs sont conservées. Ci-joint le fichier :
https://www.cjoint.com/?BIglidceAvs
- j'ai copié la plage "DONNÉES!B11:U12" dans "COMPARAISON!B2:V3" (valeurs seules).
- j'ai copié la plage "DONNÉES!B14:U15" dans "COMPARAISON!B4:V5" (copie simple).
- puis après avoir modifié les diamètres des poulies et mis à jour les résultats, j'ai copié la plage "DONNÉES!B11:U12" dans "COMPARAISON!B6:V7" (copie simple).
Ce que feront les macros futures.
Si tu regarde le graphique en feuille "COMPARAISON", tu verras que la courbe "IDÉAL" dépasse les deux autre courbes car il reste "quelque chose dans les cellules de la plage "O3:V3".
Si, au lieu de copier les valeurs seules dans la plage "B2:U3", je fais une copie simple ou si je mets des formules (ce qui m'éviterait de copier), j'ai ce même défaut !
Effaces (touche Suppr) des cellules dans la plage "O3:V3" et tu verras que la courbe disparait !
Je cherche donc un moyen pour qu'il n'y ait "vraiment RIEN" dans les cellules situées au delà de la limite, comme pour les cellules de la plage "O4:V7".
Merci si tu connais une astuce. Car même si le défaut n'est pas gênant en soit, c'est pour le principe.
A+,
GUGUSSE.
Je n'avais pas fait attention que, lorsque tu ouvrirait le fichier, il serait initialisé !
J'ai inhibé la fonction et ainsi les valeurs sont conservées. Ci-joint le fichier :
https://www.cjoint.com/?BIglidceAvs
- j'ai copié la plage "DONNÉES!B11:U12" dans "COMPARAISON!B2:V3" (valeurs seules).
- j'ai copié la plage "DONNÉES!B14:U15" dans "COMPARAISON!B4:V5" (copie simple).
- puis après avoir modifié les diamètres des poulies et mis à jour les résultats, j'ai copié la plage "DONNÉES!B11:U12" dans "COMPARAISON!B6:V7" (copie simple).
Ce que feront les macros futures.
Si tu regarde le graphique en feuille "COMPARAISON", tu verras que la courbe "IDÉAL" dépasse les deux autre courbes car il reste "quelque chose dans les cellules de la plage "O3:V3".
Si, au lieu de copier les valeurs seules dans la plage "B2:U3", je fais une copie simple ou si je mets des formules (ce qui m'éviterait de copier), j'ai ce même défaut !
Effaces (touche Suppr) des cellules dans la plage "O3:V3" et tu verras que la courbe disparait !
Je cherche donc un moyen pour qu'il n'y ait "vraiment RIEN" dans les cellules situées au delà de la limite, comme pour les cellules de la plage "O4:V7".
Merci si tu connais une astuce. Car même si le défaut n'est pas gênant en soit, c'est pour le principe.
A+,
GUGUSSE.
Bonjour,
La première solution n'est pas envisageable, sinon inutile de faire un programme !
Pour la deuxième solution, j'ai besoin d'explications supplémentaires pour comprendre. L'aide sur les mots clefs ne m'éclairant pas beaucoup.
Je compte sur ton bon coeur.
J'ai essayé une troisième solution qui semble bien fonctionner et qui peut être réalisée par macro :
Effacer toutes les cellules du tableau (un "init" en quelque sorte) puis ne copier QUE les cellules remplies comme je le fais pour mettre à jour les résultats.
à peaufiner donc.
A+,
GUGUSSE.
La première solution n'est pas envisageable, sinon inutile de faire un programme !
Pour la deuxième solution, j'ai besoin d'explications supplémentaires pour comprendre. L'aide sur les mots clefs ne m'éclairant pas beaucoup.
Je compte sur ton bon coeur.
J'ai essayé une troisième solution qui semble bien fonctionner et qui peut être réalisée par macro :
Effacer toutes les cellules du tableau (un "init" en quelque sorte) puis ne copier QUE les cellules remplies comme je le fais pour mettre à jour les résultats.
à peaufiner donc.
A+,
GUGUSSE.
si la 3° solution fonctionne, adoptes !!
quelques explications sur la 2° solution
2° solution
nommer les plages de façon dynamique
puis affecter ces plages aux données source
avantages:
1. le graphique ne prend en compte que les plages renseignées, et se met à jour automatiquement si les plages augmentent ou diminuent
2. pas besoin de VBA
voir noms (je suppose que tu sais comment attribuer un nom à une plage)
COMP_IDE_X=DECALER(COMPARAISON!$C$2;0;0;1;NB(COMPARAISON!$C$2:$V$2))
définit la plage COMP_IDE_X
- à partir de C2
- avec un décalage de 0 lignes et de 0 colonnes
- comprenant 1 ligne et autant de colonnes qu'il y a de nombres dans C2:V2
RQ. si les données de la plage C2:V2 ne sont pas des nombres, remplacer NB(...) par NBVAL( )
COMP_IDE_Y=DECALER(COMPARAISON!$C$2;1;0;1;NB(COMPARAISON!$C$2:$V$2))
définit la plage COMP_IDE_Y
- à partir de C2
- avec un décalage de 1 lignes et de 0 colonnes
- comprenant 1 ligne et autant de colonnes qu'il y a de nombres dans C2:V2
COMP_INI_Y=DECALER(COMPARAISON!$C$2;3;0;1;NB(COMPARAISON!$C$2:$V$2))
>idem avec un décalage de 3 lignes
COMP_IAJU_Y=DECALER(COMPARAISON!$C$2;5;0;1;NB(COMPARAISON!$C$2:$V$2))
>iidem avec un décalage de 5 lignes
- données source
Série IDEAL par exemple
Valeurs ='poulies-2.xls'!COMP_IDE_Y
Etiquettes ='poulies-2.xls'!COMP_IDE_X
ces deux plages décrites sous la forme:
'nom complet du classeur'!nom de la plage
RQ. si tu changes le nom du classeur, le nouveau nom est pris en compte
bonne suite
quelques explications sur la 2° solution
2° solution
nommer les plages de façon dynamique
puis affecter ces plages aux données source
avantages:
1. le graphique ne prend en compte que les plages renseignées, et se met à jour automatiquement si les plages augmentent ou diminuent
2. pas besoin de VBA
voir noms (je suppose que tu sais comment attribuer un nom à une plage)
COMP_IDE_X=DECALER(COMPARAISON!$C$2;0;0;1;NB(COMPARAISON!$C$2:$V$2))
définit la plage COMP_IDE_X
- à partir de C2
- avec un décalage de 0 lignes et de 0 colonnes
- comprenant 1 ligne et autant de colonnes qu'il y a de nombres dans C2:V2
RQ. si les données de la plage C2:V2 ne sont pas des nombres, remplacer NB(...) par NBVAL( )
COMP_IDE_Y=DECALER(COMPARAISON!$C$2;1;0;1;NB(COMPARAISON!$C$2:$V$2))
définit la plage COMP_IDE_Y
- à partir de C2
- avec un décalage de 1 lignes et de 0 colonnes
- comprenant 1 ligne et autant de colonnes qu'il y a de nombres dans C2:V2
COMP_INI_Y=DECALER(COMPARAISON!$C$2;3;0;1;NB(COMPARAISON!$C$2:$V$2))
>idem avec un décalage de 3 lignes
COMP_IAJU_Y=DECALER(COMPARAISON!$C$2;5;0;1;NB(COMPARAISON!$C$2:$V$2))
>iidem avec un décalage de 5 lignes
- données source
Série IDEAL par exemple
Valeurs ='poulies-2.xls'!COMP_IDE_Y
Etiquettes ='poulies-2.xls'!COMP_IDE_X
ces deux plages décrites sous la forme:
'nom complet du classeur'!nom de la plage
RQ. si tu changes le nom du classeur, le nouveau nom est pris en compte
bonne suite
Bonjour,
Merci de cette explication. Je n'avais pas pensé regarder dans le gestionnaire des noms !
Peut-il y avoir sur ce principe une plage de plusieurs lignes avec autant de colonnes que de cellules remplies ?
Dans le graphique, comment défini-t-on les plages à prendre en compte (ce "$N?" que je vois dans les plages du graphique sort de quelle boîte ?).
Ta solution semble meilleure que la mienne car je n'arrive pas à copier QUE les cellules "remplie" de façon automatique.
Encore merci.
Cordialement,
GUGUSSE.
Merci de cette explication. Je n'avais pas pensé regarder dans le gestionnaire des noms !
Peut-il y avoir sur ce principe une plage de plusieurs lignes avec autant de colonnes que de cellules remplies ?
Dans le graphique, comment défini-t-on les plages à prendre en compte (ce "$N?" que je vois dans les plages du graphique sort de quelle boîte ?).
Ta solution semble meilleure que la mienne car je n'arrive pas à copier QUE les cellules "remplie" de façon automatique.
Encore merci.
Cordialement,
GUGUSSE.
Q1. Peut-il y avoir sur ce principe une plage de plusieurs lignes avec autant de colonnes que de cellules remplies ?
oui, ainsi decaler(A2;1;2;3;4) définit la plage C3:F5
Q2. Dans le graphique, comment défini-t-on les plages à prendre en compte
c'est expliqué à la fin de mon post #10
='nom complet du classeur'!nom de la plage
(nom complet du classeur entre apostrophes puis point d'exclamation puis nom de la plage)
Q3.ce "$N?" que je vois dans les plages du graphique sort de quelle boîte ?
changes le nom de mon classeur (je l'ai nommé poulies-2.xls mais cjoint lui a ajouté ses références d'où peut être le $N)
bonne suite
oui, ainsi decaler(A2;1;2;3;4) définit la plage C3:F5
Q2. Dans le graphique, comment défini-t-on les plages à prendre en compte
c'est expliqué à la fin de mon post #10
='nom complet du classeur'!nom de la plage
(nom complet du classeur entre apostrophes puis point d'exclamation puis nom de la plage)
Q3.ce "$N?" que je vois dans les plages du graphique sort de quelle boîte ?
changes le nom de mon classeur (je l'ai nommé poulies-2.xls mais cjoint lui a ajouté ses références d'où peut être le $N)
bonne suite
et peut être une 4° solution qui te permet de garder tes 20 "points" pour ton graphique
https://www.cjoint.com/?3IgpSoKG9hm
puis
MFC sur C3
La formule est =ESTNA(C$3)
police
couleur du fond
copier format jusqu'en V3
https://www.cjoint.com/?3IgpSoKG9hm
puis
MFC sur C3
La formule est =ESTNA(C$3)
police
couleur du fond
copier format jusqu'en V3
Salut,
Super cette dernière solution !
Tout à fait ce que je souhaitais.
J'ai un peu modifié les formules pour que l' "IDÉAL" soit ce que le système DEVRAIT faire :
C2=<=SI(NB(DONNÉES!B11);DONNÉES!B5;"")>
D2=<=SI(NB(DONNÉES!C11);C2+1;"")> à tirer ves la droite
C3=<=SI(NB(DONNÉES!B12);DONNÉES!B6;NA())>
D3=<=SI(NB(D2);C3*Rf;NA())> à tirer ves la droite
Le SUMMUM serait de ne pas voir les "#N/A" en ligne 3, mais ne soyons peut-être pas trop tatillon. Cette solution est pleinement satisfaisante.
Encore merci,
Cordialement,
GUGUSSE.
Super cette dernière solution !
Tout à fait ce que je souhaitais.
J'ai un peu modifié les formules pour que l' "IDÉAL" soit ce que le système DEVRAIT faire :
C2=<=SI(NB(DONNÉES!B11);DONNÉES!B5;"")>
D2=<=SI(NB(DONNÉES!C11);C2+1;"")> à tirer ves la droite
C3=<=SI(NB(DONNÉES!B12);DONNÉES!B6;NA())>
D3=<=SI(NB(D2);C3*Rf;NA())> à tirer ves la droite
Le SUMMUM serait de ne pas voir les "#N/A" en ligne 3, mais ne soyons peut-être pas trop tatillon. Cette solution est pleinement satisfaisante.
Encore merci,
Cordialement,
GUGUSSE.