• Initiateur de la discussion Initiateur de la discussion DOP
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

DOP

XLDnaute Nouveau
Bonjour à tous,


J'ai des valeurs aléatoires en Y, variables,
en X des constantes décroissantes non proportionnelles.
Je cherche à connaître la valeur de X pour un Y=50 (par exemple).

X n'étant pas proportionnel et les valeurs Y variables, on ne pas utiliser la fonction DROITEREG.
les équations obtenues sont des fonctions polynomiales de degré 3 à 10 (multiplie les erreurs) et X non proportionnel (coefficients erronés)

C'est pourquoi je suis passé par les intervalles, obtenant ainsi des fonctions linéaires satisfaisant aux points (X1:Y1) (X2:Y2), determinant a et b avec DROITEREG, tel que y=aX+b
Avec la formule =SI(ET(MOYENNE(Y1:Y2)>45;MOYENNE(Y1:Y2)<55);(50-b)/a;"") que je déroule et hop !!
Sauf que les limites 45 et 55, sont elles aussi aléatoires, donc je dois trouver une formule tel que la bonne fonction soit choisie dans les moyennes des Y, c'est à dire que la valeur la plus proche de y=50.

J'ai fais une bidouille du style, si dans la colonne contenant les moyennes Y1:Y2, Y2:Y3 etc... tu trouves une valeur comprise entre 40 et 42,"affiche 40-42" etc...42 et 45
Si(SOMMEPROD((D12 : D19>40)*(D12 : D19)<42)=1;"40-42"; SI( etc...))
mais j'aurais toujours un cas où le Y=50 sera sur la droite dont la moyenne des Y=39....

De plus quand j'affiche dans une cellule (G8) la valeur basse de ma limite "40" :
Si(SOMMEPROD((D12 : D19>40)*(D12 : D19)<42)=1;"40"; SI( etc...))
et dans une autre (G9) ma valeur haute "42"
Si(SOMMEPROD((D12 : D19>40)*(D12 : D19)<42)=1;"42"; SI( etc...))
le calcul suivant ne marche pas,
=SI(ET(MOYENNE(Y1:Y2)>G8;MOYENNE(Y1:Y2)<G9);(50-b)/a;"")
alors qu'avec les valeurs tapées 40 et 42 cela fonctionne ??? >.< ???

Le fichier est en copie normalement,

Merci de votre aide +++

Dopxls
 

Pièces jointes

Dernière édition:
Re : Interpolation

Bonjour,

J'ai utilisé une approche différente.
Les plages sont nommées mesX et mesY pour la gamme

Pour que ce soit plus clair, j'ai laissé les étapes intermédiaires du calcul mais tu peux utiliser directement la formule suivante
pour rechercher Y quand tu connais X (placé en D19)

[TABLE="width: 80"]
[TR]
[TD="class: xl72, width: 80"]=SI(ESTERREUR(INDEX(mesY;EQUIV(D19;mesX;-1)+1)+(INDEX(mesY;EQUIV(D19;mesX;-1))-INDEX(mesY;EQUIV(D19;mesX;-1)+1))*(D19-INDEX(mesX;EQUIV(D19;mesX;-1)+1))/(INDEX(mesX;EQUIV(D19;mesX;-1))-INDEX(mesX;EQUIV(D19;mesX;-1)+1)));"hors gamme";INDEX(mesY;EQUIV(D19;mesX;-1)+1)+(INDEX(mesY;EQUIV(D19;mesX;-1))-INDEX(mesY;EQUIV(D19;mesX;-1)+1))*(D19-INDEX(mesX;EQUIV(D19;mesX;-1)+1))/(INDEX(mesX;EQUIV(D19;mesX;-1))-INDEX(mesX;EQUIV(D19;mesX;-1)+1)))[/TD]
[/TR]
[/TABLE]


pour rechercher X quand Y (placé en D5) est connu
=SI(ESTERREUR(INDEX(mesX;EQUIV(D5;mesY;-1)+1)+(INDEX(mesX;EQUIV(D5;mesY;-1))-INDEX(mesX;EQUIV(D5;mesY;-1)+1))*(D5-INDEX(mesY;EQUIV(D5;mesY;-1)+1))/(INDEX(mesY;EQUIV(D5;mesY;-1))-INDEX(mesY;EQUIV(D5;mesY;-1)+1)));"hors gamme";INDEX(mesX;EQUIV(D5;mesY;-1)+1)+(INDEX(mesX;EQUIV(D5;mesY;-1))-INDEX(mesX;EQUIV(D5;mesY;-1)+1))*(D5-INDEX(mesY;EQUIV(D5;mesY;-1)+1))/(INDEX(mesY;EQUIV(D5;mesY;-1))-INDEX(mesY;EQUIV(D5;mesY;-1)+1)))


On peut évidemment faire aussi cela par macro
par exemple avec une fonction proposée ici-même par DranReb (que je salue au passage 🙂
A adapter pour trouver X si tu connais Y (tu as les formules adhoc dans le classeur joint

Code:
Function IntpoLin(ByVal X As Double, ByVal X1 As Double, ByVal Y1 As Double, _
ByVal X2 As Double, ByVal Y2 As Double) As Double
   IntpoLin = Y1 + (Y2 - Y1) * (X - X1) / (X2 - X1)
End Function
 

Pièces jointes

Re : Interpolation

yeSsss

Merci Misange !!!
bon je vais essayé d'intégrer cette formule elle a l'air beaucoup plus rapide et je vais la testée sur plusieurs données.
Il faut surtout que j'en comprenne la logique et la syntaxe.
et dire que j'ai passé deux jours sur les régressions polynomiales de degré 6...

J'ai le sentiment d'être un aventurier sur excel!!donc l'aventure commence pour moi! enfin il faut aussi que je me remette aux maths, lol.

Bon week end Misange,
Bon week end à tous!
Dopxls
 
Re : Interpolation

Je t'invite à lire cette page qui te convaincra je l'espère du fait qu'un polynome de degré 6 n'a aucun sens dans ton cas (d'ailleurs ça ne représente que très peu tes données)
Ce lien n'existe plus

Tu trouveras beaucoup d'aide ici sur tes questions particulières et sur excelabo pour les tutos.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
0
Affichages
381
Réponses
10
Affichages
534
Réponses
2
Affichages
760
Retour