Incrémenter la valeur d'une cellule jusqu'à obtention d'une valeur cible

Bonjour à tous,

Je cherche à obtenir une macro qui incrémente la valeur contenue dans une cellule (A1 dans mon exemple :

40exemple.xlsm (8.80 Ko)

) avec un pas de 0.01, jusqu'à obtenir une valeur inférieure ou égale à 1 dans la cellule B1 (dont la valeur est évidemment dépendante de celle de A1).

Puis, elle retourne la valeur de A1 dans une autre cellule (E1 dans mon exemple).

Je tiens à signaler que pour l'exemple j'ai affecté une formule simple à B1, mais dans mon cas réel elle est bien plus complexe (beaucoup de cellules interviennent). Il faut donc que la macro fonctionne à partir de la valeur de cette cellule, et non pas intégrer la formule dans la macro ! (on ne sait jamais ).

Merci d'avance pour votre aide.

Bonjour,

jusqu'à obtenir une valeur inférieure ou égale à 1 dans la cellule B1

Précision : ne voulez vous pas la plus grande valeur de A1 pour que B1 reste inférieur ou égale à 1 ?

Car vous mettez 4.74 comme exemple sur votre fichier mais 3.75 (par exemple) fonctionne aussi...

@ bientôt

LouReeD

Bonjour,

Connais tu le complément Solver Add-in présent dans Excel ? (onglet développeur puis complément)

Ce complément permet de faire évoluer la valeur d'une cellule afin d'obtenir une valeur cible dans une autre cellule, bref, je pense que ça fait exactement ce que tu souhaites programmer, je te laisse donc regarde ce complément

Voici un lien en parlant :

https://support.office.com/fr-fr/article/d%C3%A9finir-et-r%C3%A9soudre-un-probl%C3%A8me-%C3%A0-l-aide-du-solveur-5d1a388f-079d-43ac-a7eb-f63e45925040

Bonjour,

Sub aargh()

    While Range("B1")<1
        Range("A1") = i
        i = i + 0.01
    Wend
End Sub

Bonjour,

On peut aussi le faire par formule : =ARRONDI(1/0,21;2) donne B1=0,9996000000 > soit A1=4.76

ric

Je n'ai pas eu le temps de répondre.... ACIDE !!!! i<j !!!

@ bientôt

LouReeD

Bonjour,

jusqu'à obtenir une valeur inférieure ou égale à 1 dans la cellule B1

Précision : ne voulez vous pas la plus grande valeur de A1 pour que B1 reste inférieur ou égale à 1 ?

Car vous mettez 4.74 comme exemple sur votre fichier mais 3.75 (par exemple) fonctionne aussi...

@ bientôt

LouReeD

Bien vu ! Il s'agissait de la valeur maximale de A1 pour une valeur B1 inférieure ou égale à 1 !

Bonjour,

On peut aussi le faire par formule : =ARRONDI(1/0,21;2) donne B1=0,9996000000 > soit A1=4.76

ric

Non on ne peut pas ! C'est d'ailleurs pour cela que j'ai précisé :

"Je tiens à signaler que pour l'exemple j'ai affecté une formule simple à B1, mais dans mon cas réel elle est bien plus complexe (beaucoup de cellules interviennent). Il faut donc que la macro fonctionne à partir de la valeur de cette cellule, et non pas intégrer la formule dans la macro ! (on ne sait jamais )."

Merci quand même d'avoir pris le temps d'essayer de m'aider !

Bonjour,

Sub aargh()

    While Range("B1")<1
        Range("A1") = i
        i = i + 0.01
    Wend
End Sub

Merci !

Bonjour,

Connais tu le complément Solver Add-in présent dans Excel ? (onglet développeur puis complément)

Ce complément permet de faire évoluer la valeur d'une cellule afin d'obtenir une valeur cible dans une autre cellule, bref, je pense que ça fait exactement ce que tu souhaites programmer, je te laisse donc regarde ce complément

Voici un lien en parlant :

https://support.office.com/fr-fr/article/d%C3%A9finir-et-r%C3%A9soudre-un-probl%C3%A8me-%C3%A0-l-aide-du-solveur-5d1a388f-079d-43ac-a7eb-f63e45925040

Non je ne connaissais pas ! Mais je vais regarder cela, merci !

Bonjour tout le monde,

Peut-on avoir un exemple de cette formule si complexe ?

Car, =ARRONDI(1/(magrosseforumebiencomplexe);2) donnera aussi le bon résultat. Du moins, je crois.

ric

Bonjour tout le monde,

Peut-on avoir un exemple de cette formule si complexe ?

Car, =ARRONDI(1/(magrosseforumebiencomplexe);2) donnera aussi le bon résultat. Du moins, je crois.

ric

Bonjour,

Hé bien non justement on ne peut pas avoir cette formule ! (ou du moins on a vraiment pas envie de se farcir le travail pour l'obtenir ! )

Le résultat de la cellule cible fait intervenir une bonne 50aine de cellules contenant chacune leur formule plus ou moins complexe. Le but de ma question était justement de ne pas avoir à réaliser le travail très fastidieux de "concaténer" les formules de toutes ces cellules, en ne travaillant qu'avec le résultat de la cellule cible.

Bonne journée.

Rechercher des sujets similaires à "incrementer valeur obtention cible"