Formule à condition SI ne voit pas les variables
Fermé
KelvinZer0
Messages postés
13
Date d'inscription
dimanche 29 mai 2016
Statut
Membre
Dernière intervention
19 juillet 2016
-
15 juil. 2016 à 12:32
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 - 15 juil. 2016 à 14:16
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 - 15 juil. 2016 à 14:16
A voir également:
- Formule à condition SI ne voit pas les variables
- Formule si et - Guide
- Excel cellule couleur si condition texte - Guide
- Qui voit mon profil facebook - Guide
- Formule excel pour additionner plusieurs cellules - Guide
- Formule excel moyenne - Guide
1 réponse
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 419
15 juil. 2016 à 12:54
15 juil. 2016 à 12:54
Bonjour
curieux, on ne voit pas pourquoi la formule serait liée à VBA?
copeir coller chez moi, elle fonctionne très bien?
Reste quand même à vérifier si entre D9 et Z1:Z6 il n'y a pas un problème de format (Z en texte et D en num problème auquel après teste semble bien être sensible la condition SI, mais pas cette variante de la formule:
=SI(NB.SI(Z1:Z6;D9);"Wins!";1)
crdlmnt
curieux, on ne voit pas pourquoi la formule serait liée à VBA?
copeir coller chez moi, elle fonctionne très bien?
Reste quand même à vérifier si entre D9 et Z1:Z6 il n'y a pas un problème de format (Z en texte et D en num problème auquel après teste semble bien être sensible la condition SI, mais pas cette variante de la formule:
=SI(NB.SI(Z1:Z6;D9);"Wins!";1)
crdlmnt
15 juil. 2016 à 13:24
Merci de cette réponse très rapide.
C'est que les "SZ" de mes conditions sont des variables, et non des cellules.
À voir votre code ici-bas, celà me fait comprendre bien des choses :
Votre code :
Si je comprends bien, la fonction "NB.SI" regarde les valeurs de chaque cellule d'une plage (ici de Z1 à Z6), et les compare à D9. Si c'est le cas, celà réduirait la formule de beaucoup!
Étant novice d'Excel, je viens de comprendre votre curiosité, puisqu'il est inutile de déclarer des variables alors que les cellules peuvent (en quelques sortes) être appelées dans une formule telles des variables.
Voyant cette bourde, j'ai abandonné les variables et refait mon code de cette façon en utilisant une rangée de 6 cellules en collone "BR", tel que voici :
Celà fonctionne bien, et s'avèrera moins compliqué à changer les valeurs de cellule que de variables.
Si j'ai bien compris votre logique avec "NB.SI", est-ce que le code ci-dessous fonctionnerait aussi ?
Cette idée me plaît ; ça réduirait la formule de façon considérable!
Cordialement,
Kelvin
15 juil. 2016 à 14:16
NB.SI(BR$9:BR$14;D9) va déterminer si la valeur de D9 est présente dans la liste de valeur de BR9 à BR14 et renvoie WINS! si oui, 1 si non
En fait NB.SI seule compte le nombre de valeurs de D9 présentes dans BR9:BR14 et renvoie 0 ou la valeur trouvée
ensuite la condition SI applique selon que le résultat soit 0 ou >0
ce qui reviendrait à écrire au pied de la lettre:
=SI(NB.SI(BR9:BR14;D9)>0;"WINS!";1)
mais le >0 est superflu ici
crdlmnt