Création de formules Excel intégrant les signes <, >, <=, >= d'une cellule

Bonjour,

J'ai beau chercher des solutions dans la sphère Excel (je dispose du MSO 2016), je ne trouve aucune réponse. Je m'explique:

- Tout se situe sur la première ligne entre les colonnes A et F.

- J'ai une formule située en F1 qui compare la valeur contenue en A1 (une somme prévisionnelle globale calculée depuis une multitude d'additions) en fonction de 2 valeurs de référence afin d'être correcte)

- Les valeurs de références sont contenues en C1 (la valeur de référence minimale) et E1 (la valeur de référence maximale).

- Les opérateurs de comparaisons (<, >, <=, >=...) de chacune de ces valeurs de références sont situées devant en B1 et D1.

Pour schématiser, cela donne ceci:

A1 (somme prévisionnelle) B1 (signe >) C1(valeur de référence minimale) D1(signe <) E1(valeur de référence maximale) F1(résultat)

ABCDEF
100>75<125VRAI

Pour le moment, ma formule est ainsi faite:

=si(et(A1>C1;A1<E1);"Cette somme est bien située entre les deux valeurs de référence.";"Cette somme est en dehors des deux valeurs de référence.")

Cette formule est très bien mais je dois la décliner en tellement de possibilités sur l'ensemble d'un tableau de données sensibles, qu'elle devient encombrante, voir ralentissante.

Ma question est simple:

Est-il possible que la formule contenue en F1 puisse directement extraire les opérateurs de comparaisons (signes: <, >, <=, >=) contenues dans les cellules B1 et D1 afin de compléter ma formule?

En vulgarisant, j'aimerais qu'il soit possible de faire quelque chose comme ça:

=si(et(A1 &B1& C1;A1 &D1& E1);"Cette somme est bien située entre les deux valeurs de référence.";"Cette somme est en dehors des deux valeurs de référence.")

Je suis ouvert à toute forme de réponse qui ferait avancer le schmilblik dans lequel je me suis perdu. Je touche un peu à la VBA mais sans savoir de quelle manière créer des fonctions, ni solutionner ce problème, donc je m'en remets à vous Experts. N'hésitez surtout pas.

Merci de vos réponses.

Bonjour à tous !

Une approche via Power Query à adapter ( en espérant que le maudit Excel 2016 ne soit pas réfractaire....) :

A l'avenir, merci de joindre à votre demande un classeur représentatif....!

Bonsoir,

Merci de votre réponse, la mienne est un peu tardive.

Désolé mais je n'y connais rien en PowerQuery et compte tenu que mes données sont déjà dans un tableau structuré et assez massif (+ de 5Mo), je ne souhaite pas le faire passer par PowerQuery.

J'aimerais simplement alléger ma formule en incorporant simplement les opérateurs de comparaisons déjà contenus dans les cellules dans ma formule.

En fait, c'est un peu comme si je souhaitais faire des additions ou des soustractions, en fonction des + ou des - que je disposerais dans un cellule pour en additionner ou en soustraire deux autres entre elles.

Par ex: En saisissant un + en B1, ma formule déterminerait automatiquement qu'il faut additionner A1 et C1 ensemble. et inversement pour le signe -

Merci

Bonsoir,

Je suis ouvert à toute forme de réponse qui ferait avancer le schmilblik dans lequel je me suis perdu. Je touche un peu à la VBA mais sans savoir de quelle manière créer des fonctions, ni solutionner ce problème, donc je m'en remets à vous Experts. N'hésitez surtout pas.

Merci de vos réponses.

Bien qu'ouvert à "toute forme de réponse", l'option Power Query semble être refusée d'office...(méconnaissance de cet outil mis en avant, nonobstant une méconnaissance similaire au VBA)

Dommage, surtout sur un volume aussi important

Un fichier exemple, comme demandé par JFL, et comprenant les tenant et aboutissant, pourrait peut-être faire évoluer votre avis

Bon courage toutefois dans vos recherches

Bonne soirée

Bonsoir,

une proposition avec une fonction personnalisée, ce qui "transforme" le fichier en xslM...
La fonction est rigide, mais sur son principe vous pouvez en créer d'autre qui feront des additions par exemple, ou bien alors mettre un 6ième paramètre afin d'aiguiller la fonction sur le type de résultat attendu :

Function Evaluation(Cel1, Cel2, Cel3, Cel4, Cel5)
    test1 = Evaluate(Cel1 & Cel2 & Cel3)
    test2 = Evaluate(Cel1 & Cel4 & Cel5)
    If test1 And test2 Then Evaluation = True Else Evaluation = False
End Function

Le fichier :

@ bientôt

LouReeD

avec le paramètre d'aiguillage : 1 comparaison, 2 addition...

Function Evaluation(Cel1, Cel2, Cel3, Cel4, Cel5, leType)
    Select Case leType
        Case 1 ' comparaison
            test1 = Evaluate(Cel1 & Cel2 & Cel3)
            test2 = Evaluate(Cel1 & Cel4 & Cel5)
            If test1 And test2 Then Evaluation = True Else Evaluation = False
        Case 2 ' addition
            Evaluation = Evaluate(Cel1 & Cel2 & Cel3 & Cel4 & Cel5)
    End Select
End Function

Le fichier :

@ bientôt

LouReeD

Bonsoir,

LouReed tu fais rêver d'en apprendre encore plus sur la VBA , merci à vous les gars!

Je n'ai évidemment pas encore testé la solution de LouReed mais j'ai assez confiance en son code d'intégration d'une formule, qui semble très cohérant. Au pire je trouverai certainement ce qui lui fera défaut par moi-même ensuite, si jamais.

Comprenez bien que si j'avais pu contribuer en vous postant un fichier, même "anonymisé" et "déclassifié" je l'aurais fait sans hésitation. Malheureusement, je ne le peux vraiment pas. La simple création d'un workbook en guise d'exemple pourrait m'être reproché.

Merci de vos réponses les gars, je considère le sujet clos.

Bonjour,

Merci pour ce retour et vos remerciements ! 😀

N'hésitez pas à revenir avec d'autres questions s'il le faut, en ouvrant un nouveau sujet, bien évidement. 😉

@ bientôt

LouReeD

Bonjour à tous !

Je n'ai évidemment pas encore testé la solution de LouReed mais j'ai assez confiance en son code d'intégration d'une formule, qui semble très cohérant.

C'est réjouissant de constater que le bloqué 2014 puisse débloquer en 2026....

La simple création d'un workbook en guise d'exemple pourrait m'être reproché.

Etes-vous vous certain, professionnellement, d'être au bon endroit ?

Inhiber un collaborateur dans sa mission est un comportement bien étrange.....

Bonjour

A moins de ne pas avoir compris la question mais je pense qu'un simple NB.SI.ENS répond au problème

=NB.SI.ENS(A2;B2&C2;A2;D2&E2)

capture d ecran 2026 03 16 091448

Ou 2 NB.SI si NB.SI.ENS n'est pas encore dispo en version 2016

=NB.SI(A2;B2&C2)*NB.SI(A2;D2&E2)

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

EDIT

avec un ET pour obtenir directement VRAI / FAUX

=ET(NB.SI(A2;B2&C2);NB.SI(A2;D2&E2))

image

Ou

=ET(NB.SI.ENS(A2;B2&C2;A2;D2&E2))

Stéphane

Bonjour,

@ raccourcix : bien vu mais le souci est qu'il peut y avoir des additions/soustractions à la place des comparaisons, donc ça se corse.

Etes-vous vous certain, professionnellement, d'être au bon endroit ?

OTIS: Mais vous savez, moi, je ne crois pas qu'il y ait de bonnes ou de mauvaises situations, si je devais résumer ma vie aujourd'hui je dirais que c'est d'abord des rencontres, des gens qui m'ont tendu la main, peut-être à un moment où je ne pouvais pas, j'étais seul chez moi, et c'est assez curieux de se dire que les hasards, les rencontres forgent une destinée. Parce que... Quand on a le gout de la chose, quand on a le gout de la chose bien faite, le beau geste, on ne trouve pas, heu, l'interlocuteur en face, je dirais, heu, le miroir qui vous aide à avancer ...

Maintenant si tu as de quoi me proposer un endroit dans lequel travailler de manière plus humaine et plus emancipatrice, je reste ouvert aux propositions.

telechargement
Rechercher des sujets similaires à "creation formules integrant signes"