NB.SI ?
Bonjour,
J'utilise la commande NB.SI(Plage;"Texte") pour détecter du texte dans une plage de cellules et affecter un coefficient.
Est-il possible de détecter du texte sur des cellules non contiguës ?
Est-il possible de détecter plusieurs textes différents ?
Actuellement je suis obligé d’additionner les NB.SI pour chaque texte à détecter et cela pour chaque cellule de ma feuille... une vraie usine à gaz.
Je suis aussi à la recherche d'une formule qui me permette :
- de détecter une cellule contenant "NL",
- de tester la cellule précédente de la cellule "NL" découverte et d'affecter un coefficient + 2 à une autre cellule si cette cellule précédent "NL" contient S1 ou S2 ou S3 ?
Merci par avance de vos conseils
Bien cordialement
GA
Bonjour et Bienvenue sur le forum,
Merci de nous fournir un fichier de support et les explications nécessaires avec les résultats attendus. En ce qui concerne la formule NB.SI, elle s'applique à une plage comme tu as si bien noté dans ton message. Une plage est un bloc de cellules contigues.
Bonjour,
Merci de votre réponse.
Ci-joint fichier ESSAI PLANNING.xls (Excel 2000).
Il s'agit d'un Planning Mensuel.
Les postes affectés de jour sont S1 S2 S3... et ceux de nuit NL, Nu... sont définis sur la feuille Nomenclature.
Pour une date il y a un poste de Jour (J) et un poste de N (N).
De la ligne 48 à 57 il s'agit d'un contrôle pour être sur d'avoir le nombre de poste Journalier ou Nocturne adéquat.
De la colonne CH à CY j'utilise la formule NB.SI pour calculer les postes effectués par chaque personne.
De la colonne CZ à DC je calcule toujours avec NB.SI les tranches effectués les WE mais la formule devient une véritable usine à Gaz.
Existe-t-il quelque de chose de plus élégant ?
Ensuite j'ai un problème avec le calcul des heures effectués en effet l'association par exemple sur deux cellules contiguës S1/NL donne (S1 =) 10 heures + (NL =) 12 heures soit 22 heures ce qui est juste mais je voudrais pourvoir repérer ces associations afin d'affecter 2 heures supplémentaire afin d'obtenir 24 heures.
Merci par avance de vos conseils
Bien cordialement
GA
Bonjour
Pour ce qui est de "formule plus élégante"
Exemple
En D48
=SOMMEPROD((NB.SI(D4:D41;{"S1";"/S1";"S1/"})))En D49
=SOMMEPROD((NB.SI(D4:D46;{"S2";"/S2";"S2/";"S3"})))en D50
=SOMMEPROD((NB.SI(D4:D46;{"R";"/R";"R/"})))De la colonne CZ à DC je calcule toujours avec NB.SI les tranches effectués les WE mais la formule devient une véritable usine à Gaz.
Cette formule adaptée à la plage en question devrait solutionner ton pb d'usine à gaz.
Par ailleurs, en créant un tableau de correspondance des codes et de leur valeur respective (sur ce fichier en colonnes DK et DL de la Feuille Septembre, tu pourrais en colonne BV (ici en BV4) mettre
=SOMMEPROD(($CH$1:$CY$1=Code)*(CH4:CY4)*(Val))en colonne BW (ici BW4)
=SOMMEPROD(($CC$1:$CE$1=Code)*(CC4:CE4)*(Val))*CG4+(CF4*9,6)Pour le second point S1/NL, peux tu préciser dans quelle cellule est le résultat?
Cordialement
Bonjour
Pour ton second problème, j'ai introduit un NL en K6, de sorte que nous ayons un S1 suivi d'un NL, le résultat est donné à titre d'exemple en DN6 avec la formule
=SOMMEPROD((C6:BT6="S1")*(D6:BU6="Nl"))*2
Donc en BV6, la formule finale serait
=SOMMEPROD(($CH$1:$CY$1=Code)*(CH6:CY6)*(Val))+SOMMEPROD((D6:BU6="S1")*(C6:BT6="Nl"))*2Cordialement
Merci... cela correspond tout à fait à ce que je recherchais.
Bien Cordialement,
GA