pouvez vous s'il vous plait m'expliquer pourquoi j'ai eu les erreurs suivantes en travaillant avec la fonction si. erreurs dans cellules A10 et A11.(voir fichier rattaché)
de même je ne comprends pas pourquoi ça ne marche pas dans les cellules A7 et A8. Lorsque je change la valeur de la cellule I7 de 3 ----> 1 j'obtiens un résultat correct dans la cellule A7
ps je ne cherche pas à utiliser des formules matricielles plutôt comprendre les erreurs et les résultats
merci beaucoup
Excel fait toujours lui demandes (quand c'est possible) et quelques (rares) fois ce que tu veux !
Tu mets une formule avec une syntaxe matricielle et tu l'utilises comme une formule normale => Excel fait ce qu'il peut !!!
Dans une formulation Si(), la condition doit répondre à Faux ou Vrai (0 ou différent de 0)
en A7 :
Code:
=SI(I4:$I$9=$A$4;DECALER(I4;0;-4))
Comme ce n'est pas validé en matricielle, et qu'Excel s'efforce de répondre, il considère la formule comme
Code:
=SI(I4=$A$4;DECALER(I4;0;-4);Faux)
Si tu l'avais validé en matricielle, tu lui aurais demandé
Code:
=SI($I$9=$A$4;DECALER(I4;0;-4);Faux)
comme il ne sais donner qu'une seule réponse à une formule. Et comme tu omets de préciser quoi répondre en cas de condition fausse, il te répond la condition.
Excel, c'est comme tout langage : il y a des obligations de syntaxe et de terme et comme il est poli, il cherche à répondre avec correction. Mais si tu fais n'importe quoi, il ne te répondra jamais ce que tu attends !
A+
Bonjour
en complément, un peu de lecture sur les formules matricielles Ce lien n'existe plus
Si tu valides
=SI(I4:$I$9=$A$4;DECALER(I4;0;-4))
en matricielle, excel évalue chaque valeur de la plage I4:I9 et la teste pour savoir si elle est égale à A4. Sinon il ne comprend pas comment comparer d'un seul coup 6 valeurs à une seule