IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

Résultat étrange avec NB.SI


Sujet :

Excel

  1. #1
    Membre émérite Avatar de antonysansh
    Homme Profil pro
    Chargé d'études RH
    Inscrit en
    Mai 2014
    Messages
    1 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé d'études RH
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2014
    Messages : 1 115
    Points : 2 439
    Points
    2 439
    Par défaut Résultat étrange avec NB.SI
    Bonjour à tous,

    J'utilise une formule NB.SI pour compter le nombre d'occurrences des éléments d'une colonne.
    Le résultat que je trouve est étrange, je dirais même faux et j'aimerais comprendre pourquoi.

    Le cadre :
    J'ai 3 colonnes :
    • Colonne B : CODE_PARTICIPANT au format "0000000" (7 chiffres)
    • Colonne C : CODE_ACTION au format "0000000" (7 chiffres)
    • Colonne D : CODE_SESSION au format "000000" (6 chiffres)
    • Le tout sur 13917 lignes (info peu importante car j'ai testé avec moins de ligne et même problème)
    C'est bien les données dans les cellules qui sont sur 7 ou 6 chiffres et non un format de cellule.

    Ce que j'ai fait :
    En colonne A je concatène les colonnes B, C et D. Donc en A2 la formule =B2&C2&D2.
    J'obtiens un identifiant sur 20 chiffres.

    Je veux maintenant compter le nombre d'occurrences des identifiants de la colonne A pour contrôler qu'ils soient tous uniques.
    En colonne E la formule : =NB.SI(A:A;A2)
    En colonne F la formule : =NB.SI.ENS(B:B;B2;C:C;C2;D:D;D2)

    La problématique :
    Sauf erreur de ma part, je dois avoir le même résultat en colonne E et F.
    Vous l'aurez peut-être déjà compris, ce n'est pas le cas.
    En F que des 1. C'est OK (résultat conforté après un copier/coller valeur de la colonne A et suppression des doublons, Excel me dit : "Pas de doublon trouvé")
    En E j'ai des 1 mais pas que. En filtrant sur les 5 par exemple, je retrouve 5 lignes (les 5 identiques donc) mais elles sont toutes différentes.


    J'espère que la problématique est claire et que l'un de vous aura des explications sur la différence entre les deux résultats.
    Merci d'avance.


    PS : Si besoin d'un fichier (.xlsx, .txt ou autre) pour test je peux le fournir.
    Antony

    Mieux vaut ne rien dire et passer pour un con que de l'ouvrir et ne laisser aucun doute à ce sujet.
    Gustave Parking


    Si le post vous est utile un petit fait toujours plaisir et pensez à passer en

    Et surtout -> Balise CODE

  2. #2
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 677
    Points
    18 677
    Par défaut

    Bonjour !

    Une bonne concaténation utilise un séparateur entre les données comme par exemple | ou encore ¤
    car le résultat d'une formule de calculs étant forcément juste, donc l'erreur vient des données …

    Autre méthode de vérification via SOMMEPROD …

    ___________________________________________________________________________________________________________
    Je suis Paris, Egypte, Stockholm, London, Istanbul, Berlin, Nice, Bruxelles, Charlie, …
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  3. #3
    Membre émérite Avatar de antonysansh
    Homme Profil pro
    Chargé d'études RH
    Inscrit en
    Mai 2014
    Messages
    1 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé d'études RH
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2014
    Messages : 1 115
    Points : 2 439
    Points
    2 439
    Par défaut
    Bonjour Marc,

    J'ai remplacé la formule en colonne A par : =B2&"_"&C2&"_"&D2
    Les colonnes E et F affichent maintenant la même chose.
    Merci à toi

    Par contre aurais-tu des explications ? Pourquoi les résultats sont différents sans séparateurs ?
    Mes codes restent uniques avec ou sans séparateurs, non ?
    Antony

    Mieux vaut ne rien dire et passer pour un con que de l'ouvrir et ne laisser aucun doute à ce sujet.
    Gustave Parking


    Si le post vous est utile un petit fait toujours plaisir et pensez à passer en

    Et surtout -> Balise CODE

  4. #4
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 677
    Points
    18 677
    Par défaut

    Simple logique :  tes codes ne sont plus distincts via une concaténation sans séparateur !
    Surtout si les colonnes sont au format numérique, les zéros à gauche n'existant pas dans les données mais juste à l'affichage !
    Il aurait fallu utiliser la fonction TEXTE pour conserver cet affichage des zéros à gauche mais c'est plus simple via un séparateur …

    Que ce soit du côté d'Excel via une formule de feuille de calculs comme pour un code VBA,
    toujours se rappeler l'assertion suivante :  le résultat est juste car correspondant à l'ordre donné !
    Si ce n'est pas le résultat attendu, vérifier formule ou code et si c'est correct alors les données ne le sont pas …
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  5. #5
    Membre émérite Avatar de antonysansh
    Homme Profil pro
    Chargé d'études RH
    Inscrit en
    Mai 2014
    Messages
    1 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé d'études RH
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2014
    Messages : 1 115
    Points : 2 439
    Points
    2 439
    Par défaut
    Ok Marc merci pour tes explications
    Antony

    Mieux vaut ne rien dire et passer pour un con que de l'ouvrir et ne laisser aucun doute à ce sujet.
    Gustave Parking


    Si le post vous est utile un petit fait toujours plaisir et pensez à passer en

    Et surtout -> Balise CODE

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 03/11/2010, 11h30
  2. [E-03] Formule avec résultat étrange
    Par jc42600 dans le forum Excel
    Réponses: 6
    Dernier message: 21/01/2009, 10h59
  3. [avifile] Problème avec des résultats étrange
    Par Jim_Nastiq dans le forum Dev-C++
    Réponses: 1
    Dernier message: 30/01/2007, 11h11
  4. Réponses: 1
    Dernier message: 01/01/2007, 13h17
  5. Résultat étrange avec les lumières.
    Par MaxPayne dans le forum OpenGL
    Réponses: 4
    Dernier message: 12/04/2005, 18h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo