Mis à jour de FORMULE

0

Pour  la cellule  "PT" de 10 917 on à 1 000 000 ; SVP ! Une formule pour écrire à la cellule D25 un PT de 10 500 de la cellule F31.

Je détail :

Réécrire la formule à la cellule D25 par la "RÈGLE DE TROIS "

Ex : pour 10 917 on à la cellule D25 : 1 000 000 donc une fois que ça change à la cellule D22 et D23 on aura D25 qui change (Par la réglé de trois). Ma formule renvoi seulement les valeurs déjà inscrit dans les cellules, une mise à jour de la formule pour instaurer une "RÈGLE DE TROIS " pour ainsi à régénéré des résultats à la Cellule D25 pour ; par exemple les valeurs comprise entre cellules D12 : 917 et E 12 : 1375 .

https://www.cjoint.com/c/MExp6Z4wALw


    TATA_2000 Posté le 23 mai 2023, 19:00
    par TATA_2000
    Répondre
    0

    Bonsoir TATA_2000

    J'ai beau lire et relire ton énoncé...c'est parfaitement incompréhensible !

    Relis ce que tu as écris et met toi dans la peau de celui qui ne connais rien de ton application et tu verras qu'il est impossible de comprendre ce que tu veux faire.

    Notamment tu parles des cellules D22 et D23  --> ces cellules sont vides et sans titre et n'interviennent dans aucune formule donc à quoi servent elles ??  Et qu'est que la cellule F31 vient faire dans le tableau ?

    Sois plus précis dans ta demande STP

    A bientôt

    Chris

    Posté le 24 mai 2023, 02:51
    0

    Bonjour,

    @TATA_2000 : je viens de finir ton exo ; ça sera dans mon post qui va suivre,
    mais ça va prendre encore beaucoup de temps pour écrire toutes les infos.

    @Chris : la demande n'est pas claire, d'autant plus que pour les références
    de cellules du texte de la forme automatique, c'est 2 lignes plus bas.

    rhodo

    rhodo Posté le 24 mai 2023, 05:40
    par rhodo
    0

    @TATA_2000

    ton fichier en retour : https://www.cjoint.com/c/MEydT4fzFV0

    --------------------------------------------------------------------------------------------------------

    avant de répondre à ta demande, commençons par ceci :

    en E11 : =D11+500000

    en D13 : =D42 ; j'ai simplement enlevé le signe « + ».

    en D14 : =D13+D12 ; inutile d'utiliser la fonction SOMME()
    pour faire le total de seulement 2 cellules !  ;)

    pour ces 3 formules, je les ai déjà étendues
    à droite jusqu'en colonne AA.

    --------------------------------------------------------------------------------------------------------

    je vais maintenant répondre à ta demande, et ça sera en 2 parties ; dans les
    formules qui seront indiquées ci-dessous, c'est ce qui est en gras qui sera
    expliqué ; ne tiens pas compte du reste, ça sera expliqué plus loin.

    --------------------------------------------------------------------------------------------------------

    Partie A : quand la cellule F33 est vide.

    MÊMES RÉSULTATS QU'AVANT : en D27 : 1 000 000 ; en D29 : 10 917.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    formule en E27 : =SIERREUR(EQUIV(D24;D12:AA12;1);"?")

    en D24, il y a 917 ; EQUIV() recherche 917 dans D12:AA12 (recherche selon
    une valeur proche) ; ça retourne 1 car ça trouve 917 en 1ère colonne de la
    plage D12:AA12 ; j'ai ajouté SIERREUR() car si par exemple tu mets un PD
    de 800, ça retourne « ? » au lieu de « #N/A » ; remets 917.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    formule en D27 :

    =SI(F33="";SIERREUR(INDEX(D11:AA11;E27);"?");F28+((F29-F28)/(F33-D25)))

    comme F33 est vide, ça retourne un nombre de la ligne 11 (selon E27) ;
    j'ai ajouté SIERREUR() pour éviter aussi un éventuel #N/A.

    pour un PD de 917, ça retourne un KD de 1 000 000.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    formule en E29 :

    =SI(F33="";EQUIV(D25;D13:AA13;0);EQUIV(F33;D13:AA13;1))

    en D25, il y a 10 000 ; comme F33 est vide, EQUIV() recherche 10 000 dans
    D13:AA13 (recherche selon une valeur exacte) ; ça retourne 1 car ça trouve
    10 000 en 1ère colonne de la plage D13:AA13.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    formule en D29 : =SI(F33="";INDEX(D14:AA14;E29);F33)

    comme F33 est vide, ça retourne un nombre de la ligne 14 (selon E29).

    pour un PE de 10 000, ça retourne un PT de 10 917.

    --------------------------------------------------------------------------------------------------------

    Partie B : quand tu saisis un PT en F33.

    par exemple, en F33, saisis : 10500 ➯ en D29 : PT = 10 500 ;
    en D27 : KD = 1 001 000 ; c'est mon interpolation :

    1 500 000 - 1 000 000 = 500 000
    10 500 - 10 000 = 500

    500 000 / 500 = 1 000

    1 000 000 + 1 000 = 1 001 000

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    formule en D29 : =SI(F33="";INDEX(D14:AA14;E29);F33)

    comme F33 n'est pas vide, ça retourne simplement
    le nombre que tu as saisi en F33 : 10 500.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    en E27 : comme c'est déjà noté en partie A, donc : même formule ; et même
    résultat : 1 ; mais juste pour info, quand F33 n'est pas vide, ce 1 n'est pas
    utilisé
    par la formule de D27 (à la place, ça fait une interpolation).

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    formule en E29 :

    =SI(F33="";EQUIV(D25;D13:AA13;0);EQUIV(F33;D13:AA13;1))

    en F33, il y a 10 500 ; comme F33 n'est pas vide, EQUIV() recherche 10 500
    dans D13:AA13 (recherche selon une valeur proche) ; ça retourne 1 vu les
    données de la plage D13:AA13 : 10 500 est entre 10 000 de D13 et 15 000
    de E13.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    en F28 : =SI(F33="";"";DECALER(C11;0;E29)) ; retour : 1 000 000
    (juste pour info, note que ça retourne rien si F33 est vide).

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    en F29 : =SI(F33="";"";DECALER(C11;0;E29+1)) ; retour : 1 500 000
    (juste pour info, note que ça retourne rien si F33 est vide).

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    formule en D27 :

    =SI(F33="";SIERREUR(INDEX(D11:AA11;E27);"?");F28+((F29-F28)/(F33-D25)))

    comme F33 n'est pas vide, ça retourne un nombre qui est mon interpolation ;
    donc pour un PT de 10 500, ça retourne un KD de 1 001 000.

    --------------------------------------------------------------------------------------------------------

    ajout pour la ligne 42 : si tu veux, tu peux mettre en E42 cette formule :
    =D42+5000 (puis étendre cette formule à droite jusqu'en AA42).

    j'ai préféré éviter de le faire car je ne sais pas au juste comment tu gères
    la plage D42:AA42 : peut-être que tu ajoutes des colonnes ou que tu en
    supprimes ?  ;)

    --------------------------------------------------------------------------------------------------------

    si besoin, tu peux demander une adaptation.
    à te lire pour avoir ton avis.  :)

    rhodo

    Posté le 24 mai 2023, 08:07
    0

    Bonjour TATA_2000,

    voici un petit complément.  :)

    je pense que ma façon de faire l'interpolation est bonne ; donc :
    pour un PT de 10 500, ça donne bien un KD de 1 001 000.

    au cas où tu préfèrerais utiliser un autre calcul pour faire ton
    interpolation, tu dois modifier seulement la fin de la formule
    de D27 (c'est ce qui est en gras) :

    =SI(F33="";SIERREUR(INDEX(D11:AA11;E27);"?");F28+((F29-F28)/(F33-D25)))

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    juste pour info, compte tenu de la priorité des opérations, tu peux enlever
    une paire de parenthèses et mettre :

    =SI(F33="";SIERREUR(INDEX(D11:AA11;E27);"?");F28+(F29-F28)/(F33-D25))

    en effet, c'est d'abord la division qui est évaluée en premier :
    (F29-F28)/(F33-D25)

    puis ensuite, le résultat obtenu est ajouté à F28.

    je veux dire par là que même avec la paire de parenthèses en moins,
    ça ne fera pas : (F28+(F29-F28))/(F33-D25)

    rhodo

    rhodo Posté le 27 mai 2023, 13:45
    par rhodo

    Si vous n'êtes pas inscrit sur le site, vous pouvez poster librement (en tant qu'invité).
    Pour cela, indiquez un pseudonyme (nom d'utilisateur) et une adresse email :