Excel, fonctions imbriquées SI, NB.SI etc
guillaume
-
Vaucluse Messages postés 26496 Date d'inscription Statut Contributeur Dernière intervention -
Vaucluse Messages postés 26496 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous,
Je viens à votre rencontre chers internautes car je fais face à un problème qui me paraît insoluble....
Je travaille actuellement sur un fichier client excel et je souhaite intégrer une colonne qui me permettrait de voir si les noms rattachés à chaque n° client sont valides.
Il y a dans le fichier des noms corrompus ou mal renseignés du genre XX ou ZZ que je souhaite pouvoir isoler.
Pour l'instant, j'ai le raisonnement mais pas les opérateurs logiques pour faire fonctionner la formule :
=SI(A2 "contient" "*XX*" ou"*ZZ*"; "irrégularité";"ok")
le problème étant que je ne sais pas traduire "contient" et "ou" dans excel...
Pouvez vous m'aider??
Merci beaucoup,
-Guillaume-
Je viens à votre rencontre chers internautes car je fais face à un problème qui me paraît insoluble....
Je travaille actuellement sur un fichier client excel et je souhaite intégrer une colonne qui me permettrait de voir si les noms rattachés à chaque n° client sont valides.
Il y a dans le fichier des noms corrompus ou mal renseignés du genre XX ou ZZ que je souhaite pouvoir isoler.
Pour l'instant, j'ai le raisonnement mais pas les opérateurs logiques pour faire fonctionner la formule :
=SI(A2 "contient" "*XX*" ou"*ZZ*"; "irrégularité";"ok")
le problème étant que je ne sais pas traduire "contient" et "ou" dans excel...
Pouvez vous m'aider??
Merci beaucoup,
-Guillaume-
A voir également:
- Excel, fonctions imbriquées SI, NB.SI etc
- Fonction si et excel - Guide
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Excel cellule couleur si condition texte - Guide
- Nb.si en anglais - Guide
8 réponses
bonjour,
voici un site qui devrait t'aider
http://www.journaldunet.com/management/dossiers/050479excel/index.shtml
voici un site qui devrait t'aider
http://www.journaldunet.com/management/dossiers/050479excel/index.shtml
Bonjour,
Si c'est une fonction que vous cherchez, celles de recherche existent, elles s'appelle d'ailleurs RECHERCHE. Mais cela fait très longtemps que je ne m'en suis pas servi. A chaud, je ne peux pas vous la démontrer.
N'est-il pas plus simple de filtrer votre tableau en rendant visible les lignes contenant "XX" et "ZZ" ?
Cordialement,
Migou
Si c'est une fonction que vous cherchez, celles de recherche existent, elles s'appelle d'ailleurs RECHERCHE. Mais cela fait très longtemps que je ne m'en suis pas servi. A chaud, je ne peux pas vous la démontrer.
N'est-il pas plus simple de filtrer votre tableau en rendant visible les lignes contenant "XX" et "ZZ" ?
Cordialement,
Migou
Bonjour
renvoie 1 si pas de xx et yy et 0 si au moins xx ou yy
=SI(A2="";"";(NB.SI(A2;"*xx*")=0)*(NB.SI(A2;"*yy*")=0))
renvoie 1 si pas de xx et yy et 0 si au moins xx ou yy
=SI(A2="";"";(NB.SI(A2;"*xx*")=0)*(NB.SI(A2;"*yy*")=0))
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour
bonne idée,Autoconstructeur, mais toutefois il semble, du moins chez mpoi, que le code SI ne prenne pas en compte les * pour rechercher un texte inclus.(ner marche pas avec SI mais btrès bien avec NB.SI;
Avez vous vérifié, ça m'intèresserait de comprendre pourquoi cela n'a jamais marché chez moi
On peut donc contourner le problème avec, pour traiter la cellule A2 avec recherche de deux codes à éliminer (XX et ZZ):
=SI(NB.SI(A2;"*XX*")=1;"irrégularité";""&SI(NB.SI(A2;"*ZZ*")=1;"irrégularité";"OK"))
on peut allonger la formule avec à la place du dernier OK:
;&SI(NB.SI(A2;"*YY*")=1;"irrégularité";&SI(NB.SI... etc en terminat par;"OK" et autant de ) que de SI
Ensuite pour détecter successivement des irrégularités nombreuses on peut écrire la formule différemment:
=SI(NB.SI(A2;"*"&C1&"*")=1;"irrégularité";"OK")
ainsi les irrégularités seront affichées selon le texte que l'on place en C1
Bien sur en éliminant ou en corrigeant sur de la liste au fur et à mesure de l'évolution de C1, les noms en défaut détectés
Il est aussi possible de remplacer "irrégularité" par A2, ainsi la formule ressortira dans la colonne le nom défaillant
Crdlmnt
bonne idée,Autoconstructeur, mais toutefois il semble, du moins chez mpoi, que le code SI ne prenne pas en compte les * pour rechercher un texte inclus.(ner marche pas avec SI mais btrès bien avec NB.SI;
Avez vous vérifié, ça m'intèresserait de comprendre pourquoi cela n'a jamais marché chez moi
On peut donc contourner le problème avec, pour traiter la cellule A2 avec recherche de deux codes à éliminer (XX et ZZ):
=SI(NB.SI(A2;"*XX*")=1;"irrégularité";""&SI(NB.SI(A2;"*ZZ*")=1;"irrégularité";"OK"))
on peut allonger la formule avec à la place du dernier OK:
;&SI(NB.SI(A2;"*YY*")=1;"irrégularité";&SI(NB.SI... etc en terminat par;"OK" et autant de ) que de SI
Ensuite pour détecter successivement des irrégularités nombreuses on peut écrire la formule différemment:
=SI(NB.SI(A2;"*"&C1&"*")=1;"irrégularité";"OK")
ainsi les irrégularités seront affichées selon le texte que l'on place en C1
Bien sur en éliminant ou en corrigeant sur de la liste au fur et à mesure de l'évolution de C1, les noms en défaut détectés
Il est aussi possible de remplacer "irrégularité" par A2, ainsi la formule ressortira dans la colonne le nom défaillant
Crdlmnt
Bonjour à vous,
Vaucluse vous devez bien maîtriser EXCEL car la fonction NB.SI n'est pas souvent utilisée par les néophytes.
Je suis d’accord avec vous.
La seule problématique est que Guillaume ne précise pas si *XX* ou *ZZ* est un morceau de chaîne de caractères ou la valeur contenue dans la cellule A2. D’où ma formule de base.
Si Guillaume pouvez reprendre contact avec nous pour avoir son commentaire sur les solutions...
Salutation à vous.
Vaucluse vous devez bien maîtriser EXCEL car la fonction NB.SI n'est pas souvent utilisée par les néophytes.
Je suis d’accord avec vous.
La seule problématique est que Guillaume ne précise pas si *XX* ou *ZZ* est un morceau de chaîne de caractères ou la valeur contenue dans la cellule A2. D’où ma formule de base.
Si Guillaume pouvez reprendre contact avec nous pour avoir son commentaire sur les solutions...
Salutation à vous.
Bonjour
Tout à fait d'accord avec vous Autoconstructeur, sauf peut être sur la qualification de ma maitrise d'Excel qui est largement exagérée, parceque bien loin de ce que l'on peut penser.La fonction NB.SI n'est pas plus difficile à maitriser que la fonction SI,elle offre d'autres possibilités par son type de calcul ( à savoir compter dans une plage le nombre de références répondant au critère spécifié)
et c'est encore un "caprice "d'excel, à mon sens, qui fait que NB.SI accepte ce que SI n'accepte pas!
Autre exemple:
SI fonctionne avec >X et <X NB.SI aussi mais il faut les placer entre guillemets ">0" etc...
Comme si, ce qui est fort probable, ces fonctions n'aient pas été développées par les mêmes personnes.
Ceci dit,si effectivement Guillaume recherche des valeurs complètes, votre proposition au message 1 fonctionne très bien, mais sans les *
Bien cordialement
Tout à fait d'accord avec vous Autoconstructeur, sauf peut être sur la qualification de ma maitrise d'Excel qui est largement exagérée, parceque bien loin de ce que l'on peut penser.La fonction NB.SI n'est pas plus difficile à maitriser que la fonction SI,elle offre d'autres possibilités par son type de calcul ( à savoir compter dans une plage le nombre de références répondant au critère spécifié)
et c'est encore un "caprice "d'excel, à mon sens, qui fait que NB.SI accepte ce que SI n'accepte pas!
Autre exemple:
SI fonctionne avec >X et <X NB.SI aussi mais il faut les placer entre guillemets ">0" etc...
Comme si, ce qui est fort probable, ces fonctions n'aient pas été développées par les mêmes personnes.
Ceci dit,si effectivement Guillaume recherche des valeurs complètes, votre proposition au message 1 fonctionne très bien, mais sans les *
Bien cordialement