Formule avec NB.SI.ENS

Bonsoir,

Dans le fichier joint, j'ai utilisé la formule ci-dessous, mais ça ne met pas le bon résultat!!!! si quelqu'un à une idée d'où vient le problème?

=NB.SI.ENS(range;">=X";range;"<=Y")

Cordialement

Galiax

11tri.xlsx (43.05 Ko)

Bonsoir,

il semblerait que ce soit dû à une limite d'Excel dans la gestion du format "J-1" qui est du texte mais dont il parvient tout de même à cibler le chiffre et à l'utiliser dans une comparaison, sauf qu'il a l'air de s'arrêter au 1er chiffre.

Si vous mettez ceci dans une cellule de la feuille des colis ;

=B10<="J-14"

ça renverra FAUX, alors que B10 contient J-9 et que 9 est bien inférieur à 14. Mais si vous mettez J-09, il renverra VRAI.

En gros il a l'air de considérer 9 comme 90.

Si vous n'avez pas la possibilité de transformer la colonne B, on peut faire une formule qui va cibler le chiffre (et le 9 sera bien considéré comme 9 et pas 90).

Bonsoir,

En fait, l'onglet "colis non comptés (2)" provient d'un export quotidien, mais la colonne B serra toujours au format "J-xx"

Alors ça devrait aller.

Sinon, ceci garde les caractères à partir du 3ème (donc après J-) et s'adapte à la longueur de la liste, pour E4 ;

=SOMMEPROD((CNUM(STXT(INDIRECT("'Colis non comptés (2)'!B2:B"&EQUIV("zzz";'Colis non comptés (2)'!B1:B2000;1));3;NBCAR(INDIRECT("'Colis non comptés (2)'!B2:B"&EQUIV("zzz";'Colis non comptés (2)'!B1:B2000;1)))-2))>=1)*(CNUM(STXT(INDIRECT("'Colis non comptés (2)'!B2:B"&EQUIV("zzz";'Colis non comptés (2)'!B1:B2000;1));3;NBCAR(INDIRECT("'Colis non comptés (2)'!B2:B"&EQUIV("zzz";'Colis non comptés (2)'!B1:B2000;1)))-2))<=4))

Remplacer juste >=1 et <=4 pour les 3 suivants.

Et pour J4 ;

=SOMMEPROD((CNUM(STXT(INDIRECT("'Colis non comptés (2)'!B2:B"&EQUIV("zzz";'Colis non comptés (2)'!B1:B2000;1));3;NBCAR(INDIRECT("'Colis non comptés (2)'!B2:B"&EQUIV("zzz";'Colis non comptés (2)'!B1:B2000;1)))-2))>20)*1)

La recherche se fait sur 2000 lignes pour éviter de le faire sur toute la colonne (plus d'un million de lignes !) mais vous pouvez bien sûr changer ça.

Trop bien,

Merci beaucoup Doux Rêveur

A++

Bonjour Doux Rêveur,

Je me permet d'envoyer ce message, pour voir s'il était possible d'ajouter une condition dans tes formules, pour déterminer le nbre de colis en BIL ET PIE (voir colonne F)

Cordialement

Galiax

6tri.xlsx (45.12 Ko)

Il suffit de rajouter ceci dans la matrice ;

*(INDIRECT("'Colis non comptés (2)'!F2:F"&EQUIV("zzz";'Colis non comptés (2)'!B1:B1546;1))="BIL")

Ce qui donne pour E4 ;

=SOMMEPROD((CNUM(STXT(INDIRECT("'Colis non comptés (2)'!B2:B"&EQUIV("zzz";'Colis non comptés (2)'!B1:B1546;1));3;NBCAR(INDIRECT("'Colis non comptés (2)'!B2:B"&EQUIV("zzz";'Colis non comptés (2)'!B1:B1546;1)))-2))>=1)*(CNUM(STXT(INDIRECT("'Colis non comptés (2)'!B2:B"&EQUIV("zzz";'Colis non comptés (2)'!B1:B1546;1));3;NBCAR(INDIRECT("'Colis non comptés (2)'!B2:B"&EQUIV("zzz";'Colis non comptés (2)'!B1:B1546;1)))-2))<=4)*(INDIRECT("'Colis non comptés (2)'!F2:F"&EQUIV("zzz";'Colis non comptés (2)'!B1:B1546;1))="BIL"))

Et pour J4 ;

=SOMMEPROD((CNUM(STXT(INDIRECT("'Colis non comptés (2)'!B2:B"&EQUIV("zzz";'Colis non comptés (2)'!B1:B1546;1));3;NBCAR(INDIRECT("'Colis non comptés (2)'!B2:B"&EQUIV("zzz";'Colis non comptés (2)'!B1:B1546;1)))-2))>20)*(INDIRECT("'Colis non comptés (2)'!F2:F"&EQUIV("zzz";'Colis non comptés (2)'!B1:B1546;1))="BIL"))

TOP TOP TOP

Un énorme MERCI

A++

Bonjour,

Doux Rêveur bonjour,

un essai pour la première question en E2 en ayant supprimé les "espaces" dans le nom de la feuille ! Ce n'est pas beau dans les formules ! Il faut ajouter des apostrophes !
Donc formule en E4 : =SOMMEPROD((VALEURNOMBRE(STXT(Colis_non_comptés!B2:B414;TROUVE("-";Colis_non_comptés!B2:B414)+1;99))>=1)*(VALEURNOMBRE(STXT(Colis_non_comptés!B2:B414;TROUVE("-";Colis_non_comptés!B2:B414)+1;99))<=4))

on trouve le "-", on extrait la partie du "après le tiret jusqu'au 99ième caractères ce qui donne le nombre en texte que l'on transforme en nombre avec VALEURNOMBRE comme cela on peut tester sa "grandeur".

Sur le premier fichier fourni cela donne 22 en E4.

@ bientôt

LouReeD

Bonsoir,

je supprime VALEURNOMBRE en multipliant STXT par 1, je mutualise la recherche du nombre de ligne de la feuille source ainsi que son nom en cellule E1 et H1 (comme cela vous gardez la forme de l'onglet suite à l'extraction, ce que je n'avais pas compris...), ce qui fait qu'avec les INDIRECT introduits par Doux Rêveur, les formules s'en retrouvent plus "légère" :
=SOMMEPROD((STXT(INDIRECT($E$1);TROUVE("-";INDIRECT($E$1))+1;99)*1>=1)*(STXT(INDIRECT($E$1);TROUVE("-";INDIRECT($E$1))+1;99)*1<=4)*(INDIRECT($H$1)=$D4))

ensuite ajout d'une somme des formules pour une comparaison avec le nombre de valeurs de la feuille source : si "=" alors tout est bon !

Le fichier :

2tri-lrd.xlsx (39.65 Ko)

@ bientôt

LouReeD

Avec DROITE on gagne un peu de caractère encore, comme on sait qu'il y a 2 caractères à gauche à ne pas prendre :
=SOMMEPROD((DROITE(INDIRECT($E$1);NBCAR(INDIRECT($E$1))-2)*1>=1)*(DROITE(INDIRECT($E$1);NBCAR(INDIRECT($E$1))-2)*1<=4)*(INDIRECT($H$1)=$D4))

@ bientôt

LouReeD

Merci LouReeD pour tes formules

A++

Bonsoir,

merci de votre retour !

@ bientôt

LouReeD

Rechercher des sujets similaires à "formule ens"