Bonsoir
=CHOISIR((($D5<>"")*1+($E5<>"")*2)+1;"";CHOISIR(EQUIV($B5;{"fds";"copro1";"copro2";"copro3";"autres"};0);SI($D5*F$2/1000=0;"";$D5*F$2/1000);SI(F$3=$B5;$D5;"");SI(F$3=$B5;B5;"");SI(F$3=$B5;$D5;"");"");CHOISIR(EQUIV($B5;{"copro1";"copro2";"copro3";"autres"};0);SI(DECALER(F$3;;-1)=$B5;$E5;"");SI(DECALER(F$3;;-1)=$B5;$E5;"");SI(DECALER(F$3;;-1)=$B5;$E5;"");""))
Aide Excel
valeur1, valeur2, ... sont de 1 à 29 arguments de valeur parmi lesquels CHOISIR sélectionne une valeur ou une action à exécuter en fonction de l'argument no_index spécifié. Ces arguments peuvent être des nombres, des références de cellule, des noms définis, des formules, des fonctions ou du texte.
La formule est constituée en 3 parties
CHOISIR(no_index;valeur1;valeur2;…)
Le No_index est représenté par
CHOISIR((($D5<>"")*1+($E5<>"")*2)+1 (Les débits sont col D, les crédits Col E)
Si nous avons un débit en D5, ($D5<>"") renvoie VRAI >>VRAI*1 renvoie 1
Dans ce cas $E5 est vide donc ($E5<>"") renvoie FAUX puisque $E5="" >> FAUX*1 renvoie 0
L'addittion des deux donne
($D5<>"")*1+($E5<>"")*2)=1+0=1
et
($D5<>"")*1+($E5<>"")*2)+1=1+1=2
La Fonction CHOISIR utilisera donc le 2éme argument soit la Valeur2
Dans le cas d'un Crédit,
($D5<>"")*1+($E5<>"")*2)+1=0+2+1=donnera 3 (0+2+1) donc 3éme argument ou valeur3
et si les colonnes Débit et Crédit sont toutes deux vides
($D5<>"")*1+($E5<>"")*2)+1=0+0+1=1 donc valeur1
Dans la formule totale
Valeur1 est "" (Rien)
valeur2 est
CHOISIR(EQUIV($B5;{"fds";"copro1";"copro2";"copro3";"autres"};0);SI($D5*F$2/1000=0;"";$D5*F$2/1000);SI(F$3=$B5;$D5;"");SI(F$3=$B5;B5;"");SI(F$3=$B5;$D5;"");"")
valeur3 est
CHOISIR(EQUIV($B5;{"copro1";"copro2";"copro3";"autres"};0);SI(DECALER(F$3;;-1)=$B5;$E5;"");SI(DECALER(F$3;;-1)=$B5;$E5;"");SI(DECALER(F$3;;-1)=$B5;$E5;"")
Dans valeur2, le No index est donné par
EQUIV($B5;{"fds";"copro1";"copro2";"copro3";"autres"};0) qui renvoie 1 pour fds, 2 pour copro1, etc
et donc à l'argument ou valeur correspondant.
Les arguments ou valeurs reprennent les conditions SI initiales par colonne.
Si tu veux un éclaircissement supplémentaire, fais signe.
Cordialement