Comment faire un critère partiel avec NB.SI ou SOMME.SI ?

Comment faire un critère partiel avec NB.SI ou SOMME.SI ?
Dernière mise à jour le 05/02/2024
Temps de lecture : 2 minutes

Comment transformer les critères des fonctions NB.SI ou SOMME.SI en critère partiel, juste sur une partie des lettres ?

  1. C'est quoi les métacaractères en informatique

    Un métacaractère c'est un symbole qui va remplacer 1 ou plusieurs caractères dans une chaîne

  2. Comment écrire un critère partiel avec NB.SI ou SOMME.SI

    Selon le type de critère partiel que vous voulez construire, l'écriture du critère ne sera pas le même

C'est quoi les métacaractères

En informatique, pour effectuer une recherche partielle sur un terme, on utilise des métacaractères. Et il y en a 2 :

  • L'* pour remplacer tout ou partie d'une chaîne de caractère.
  • Le ? pour remplacer un seul caractère.

Par exemple, pour rechercher tous les fichiers qui utilisent l'extension jpg dans un dossier, vous pouvez simplement écrire dans la barre de recheche *.jpg

Selection de tous les fichiers avec le metacaractere etoile

Pour être honnête, le symbole ? n'est jamais utilisé par contre, le symbole * est vraiment très utile pour faire des recherches partielles. Le symbole * permet de remplacer tout ou partie d'une chaîne de caractères comme nous allons le voir dans les exemples suivants.

Trouver tous les noms qui commencent par S

Si vous voulez compter le nombre d'hommes qui ont un nom de famille qui commence par la lettre S, vous allez écrire la formule

=NB.SI.ENS(C2:C20;"Homme";A2:A20;"S*")

NB.SI avec critère partiel sur les noms qui commencent par un S

Dans notre document, les noms Same, Satake et Simpson correspondent aux critères.

SARA commence par un S mais c'est une femme donc cette donnée est exclue du résultat.

Trouver tous les noms qui se terminent par ...

Pour connaître le nombre de personnes qui ont un nom qui se termine par Y, vous allez écrire le critère en commençant par le symbole *

=NB.SI.ENS(A2:A20;"*Y")

Soit les noms

  • CHAMPNEY
  • BYERLY
  • GAUDEFROY
NB.SI avec critère partiel sur les noms qui se terminent par un Y

Trouver les noms contenant les lettres ...

Pour connaître le nombre de personnes dont le nom contient la lettre H (au début, au milieu ou à la fin du nom), la formule s'écrit de la façon suivante en utilisant 2 fois le symbole *

=NB.SI.ENS(A2:A20;"*H*")

Dans notre exemple, il y en a 3 :

  • JANJUAH (H à la fin)
  • CHAMPNEY (H au milieu)
  • CHAP (H au milieu)
Critère de recherche qui contient une lettre

Vous trouverez des informations complémentaires sur la fonction NB.SI.ENS sur le site de Microsoft.

6 Comments

  1. Lauren
    09/12/2021 @ 12:03

    Bonjour,
    Ah, excusez moi, je n'avais pas compris votre exemple dans le bon sens.
    J'ai vu que cela marchait en partie pour mon problème et donc je pensais qu'il manquait juste un élément.
    Merci quand même.

    Reply

  2. Lauren
    08/12/2021 @ 15:57

    Bonjour,

    J'ai utilisé cette formule dans mon tableau, où il n'y a que des lettres : =NB.SI.ENS(C3:C32;"*L*"), sauf que ça ne fonctionne pas quand il a 2 fois la même lettre dans une cellule (collées ou non).
    Est-ce que vous pourriez m'indiquer ce que je devrais ajouter pour que cela me comptabilise tous les "L" quel que soit le nombre de "L" dans chaque cellule.

    Je vous remercie.
    Cordialement,
    Lauren

    Reply

    • Frédéric LE GUEN
      09/12/2021 @ 11:11

      Bonjour,
      Je ne comprends pas la question. Je pense que vous cherchez à compter le nombre de L dans une cellule mais ça, ce n'est pas la fonction NB.SI.ENS qui vous retournent cette info.
      NB.SI.ENS vous donne juste si l'information a été trouvée ou pas, pas le nombre de fois à l'intérieur d'une chaîne de caractères.
      A part faire une fonction LAMBDA récursive, je ne vois pas trop comment solutionner le problème

      Reply

  3. Liliane
    28/04/2021 @ 10:11

    Bonjour merci pour ces infos !

    Existe-il une fonction inverse ? Je m'explique : pour se référer à l'exemple cité dans l'article : je souhaite par exemple faire la somme du nombre de prénoms ne contenant pas la terre H.

    Est-il possible ?

    Merci par avance 🙂

    Reply

  4. Chrystelle ARNAULT
    07/04/2021 @ 19:54

    bonsoir Frédéric, je vous remercie pour tout le travail que vous avez fait et l'aide que ça m'a apporté.
    aujourd'hui je ne trouver pas la réponse à ma recherche, j'explique si dans un tableau je voudrais : sur le nombre dans une cellule est X alors dans une autre cellule le résultat est Y ou
    si dans ma cellule le nombre est 01 alors dans l'autre cellule le résultat est AIN . si 02 alors AISNE etc etc ainsi pour tous les départements.
    Comment puis-je faire cette transformation ?
    Merci pour tout
    Bonne soirée
    Chrystelle

    Reply

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Comment faire un critère partiel avec NB.SI ou SOMME.SI ?

Reading time: 2 minutes
Dernière mise à jour le 05/02/2024

Comment transformer les critères des fonctions NB.SI ou SOMME.SI en critère partiel, juste sur une partie des lettres ?

  1. C'est quoi les métacaractères en informatique

    Un métacaractère c'est un symbole qui va remplacer 1 ou plusieurs caractères dans une chaîne

  2. Comment écrire un critère partiel avec NB.SI ou SOMME.SI

    Selon le type de critère partiel que vous voulez construire, l'écriture du critère ne sera pas le même

C'est quoi les métacaractères

En informatique, pour effectuer une recherche partielle sur un terme, on utilise des métacaractères. Et il y en a 2 :

  • L'* pour remplacer tout ou partie d'une chaîne de caractère.
  • Le ? pour remplacer un seul caractère.

Par exemple, pour rechercher tous les fichiers qui utilisent l'extension jpg dans un dossier, vous pouvez simplement écrire dans la barre de recheche *.jpg

Selection de tous les fichiers avec le metacaractere etoile

Pour être honnête, le symbole ? n'est jamais utilisé par contre, le symbole * est vraiment très utile pour faire des recherches partielles. Le symbole * permet de remplacer tout ou partie d'une chaîne de caractères comme nous allons le voir dans les exemples suivants.

Trouver tous les noms qui commencent par S

Si vous voulez compter le nombre d'hommes qui ont un nom de famille qui commence par la lettre S, vous allez écrire la formule

=NB.SI.ENS(C2:C20;"Homme";A2:A20;"S*")

NB.SI avec critère partiel sur les noms qui commencent par un S

Dans notre document, les noms Same, Satake et Simpson correspondent aux critères.

SARA commence par un S mais c'est une femme donc cette donnée est exclue du résultat.

Trouver tous les noms qui se terminent par ...

Pour connaître le nombre de personnes qui ont un nom qui se termine par Y, vous allez écrire le critère en commençant par le symbole *

=NB.SI.ENS(A2:A20;"*Y")

Soit les noms

  • CHAMPNEY
  • BYERLY
  • GAUDEFROY
NB.SI avec critère partiel sur les noms qui se terminent par un Y

Trouver les noms contenant les lettres ...

Pour connaître le nombre de personnes dont le nom contient la lettre H (au début, au milieu ou à la fin du nom), la formule s'écrit de la façon suivante en utilisant 2 fois le symbole *

=NB.SI.ENS(A2:A20;"*H*")

Dans notre exemple, il y en a 3 :

  • JANJUAH (H à la fin)
  • CHAMPNEY (H au milieu)
  • CHAP (H au milieu)
Critère de recherche qui contient une lettre

Vous trouverez des informations complémentaires sur la fonction NB.SI.ENS sur le site de Microsoft.

6 Comments

  1. Lauren
    09/12/2021 @ 12:03

    Bonjour,
    Ah, excusez moi, je n'avais pas compris votre exemple dans le bon sens.
    J'ai vu que cela marchait en partie pour mon problème et donc je pensais qu'il manquait juste un élément.
    Merci quand même.

    Reply

  2. Lauren
    08/12/2021 @ 15:57

    Bonjour,

    J'ai utilisé cette formule dans mon tableau, où il n'y a que des lettres : =NB.SI.ENS(C3:C32;"*L*"), sauf que ça ne fonctionne pas quand il a 2 fois la même lettre dans une cellule (collées ou non).
    Est-ce que vous pourriez m'indiquer ce que je devrais ajouter pour que cela me comptabilise tous les "L" quel que soit le nombre de "L" dans chaque cellule.

    Je vous remercie.
    Cordialement,
    Lauren

    Reply

    • Frédéric LE GUEN
      09/12/2021 @ 11:11

      Bonjour,
      Je ne comprends pas la question. Je pense que vous cherchez à compter le nombre de L dans une cellule mais ça, ce n'est pas la fonction NB.SI.ENS qui vous retournent cette info.
      NB.SI.ENS vous donne juste si l'information a été trouvée ou pas, pas le nombre de fois à l'intérieur d'une chaîne de caractères.
      A part faire une fonction LAMBDA récursive, je ne vois pas trop comment solutionner le problème

      Reply

  3. Liliane
    28/04/2021 @ 10:11

    Bonjour merci pour ces infos !

    Existe-il une fonction inverse ? Je m'explique : pour se référer à l'exemple cité dans l'article : je souhaite par exemple faire la somme du nombre de prénoms ne contenant pas la terre H.

    Est-il possible ?

    Merci par avance 🙂

    Reply

  4. Chrystelle ARNAULT
    07/04/2021 @ 19:54

    bonsoir Frédéric, je vous remercie pour tout le travail que vous avez fait et l'aide que ça m'a apporté.
    aujourd'hui je ne trouver pas la réponse à ma recherche, j'explique si dans un tableau je voudrais : sur le nombre dans une cellule est X alors dans une autre cellule le résultat est Y ou
    si dans ma cellule le nombre est 01 alors dans l'autre cellule le résultat est AIN . si 02 alors AISNE etc etc ainsi pour tous les départements.
    Comment puis-je faire cette transformation ?
    Merci pour tout
    Bonne soirée
    Chrystelle

    Reply

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.