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   -
Bonjour,

Je cherche à compléter mon programme en proposant une comparaison entre :

- La distribution IDÉALe des vitesses (plage" C2:V3" en page "COMPARAISON").
Cette plage sera copiée par la macro "M_A_J" (à compléter) lors de sa première utilisation,
si le tableau est vierge.

- La distribution INITIALe des vitesses obtenue par le système, une fois les diamètres entrés,
(plage "C4:V6" copiée en même temps que la copie précédente ).

- La distribution AJUSTée des vitesses du système après une optimisation des diamètres
(plage C6:V7 copiée par la macro "M_A_J" si le tableau de comparaison est rempli en
plage "B2:V5".

Les courbes sont tracées à partir de la plage "B2:V3;B5:V5;B7:V7".

Problème : La courbe "IDÉAL" est tracée au delà du nombre maxi de vitesses quelque soit la
façon dont je copie la plage "DONNÉES:B11:U12" dans la plage "COMPARAISON!C2:V3"
(copie simple ou "valeurs seulement") et même (comme c'est le cas du fichier joint) si je met
des formules et que je ne copie pas.
Pourtant les portion superflues de courbe disparaissent si j'efface manuellement (touche
"Suppr") le contenu des celles ligne 3 au delà de la limite.

Y a t-il un moyen ou une écriture pour que la courbe "IDÉ1L" ne dépasse pas les deux autres ?

Merci de consulter le fichier joint pour bien comprendre cette explication, difficile à exprimer.
Je reste bien sûr à votre disposition pour tout renseignement complémentaire jugé utile.

https://www.cjoint.com/?BIfqrQC1o7Z

Bien cordialement,
GUGUSSE.



A voir également:

17 réponses

antipolis a Messages postés 15609 Date d'inscription   Statut Membre Dernière intervention   2 859
 
Bonjour.

Simplement pour vous signaler ceci :
http://www.cjoint.com/error404.htm

Bien cordialement.
0
GUGUSSE2 Messages postés 72 Date d'inscription   Statut Membre Dernière intervention   7
 
Le lien mêlé au texte ne convenais pas à "Cjoint". Problème résolu !
0
GUGUSSE2 Messages postés 72 Date d'inscription   Statut Membre Dernière intervention   7
 
Lien réactualisé et déplacé en bas du message.
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
bonjour

peux tu envoyer ton fichier au format excel 2003?

bonne suite
0

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

Posez votre question
GUGUSSE2 Messages postés 72 Date d'inscription   Statut Membre Dernière intervention   7
 
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.
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
bonjour

je ne comprends pas bien le problème
https://www.cjoint.com/?3IfvCVUPymw

bonne suite
0
GUGUSSE2 Messages postés 72 Date d'inscription   Statut Membre Dernière intervention   7
 
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.
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
bonjour

deux idées
https://www.cjoint.com/?3Igl25f1Js8

bonne suite
0
GUGUSSE2 Messages postés 72 Date d'inscription   Statut Membre Dernière intervention   7
 
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.
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
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
0
GUGUSSE2 Messages postés 72 Date d'inscription   Statut Membre Dernière intervention   7
 
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.
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
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
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
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
0
GUGUSSE2 Messages postés 72 Date d'inscription   Statut Membre Dernière intervention   7
 
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.
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
voir modif post #13
0
GUGUSSE2 Messages postés 72 Date d'inscription   Statut Membre Dernière intervention   7
 
Salut,

Dans la précipitation, je n'avais pas tout lu ! Honte !
problème résolu en mettant la couleur de police comme le fond.
MERRRRCI !

A charge de revanche.
GUGUSSE.
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
de rien

peux tu mettre le problème à résolu (en haut de ton premier message)

bonne route
0