Calcul nombre de valeur différentes

Bonjour,

Je cherche a obtenir le nombre de valeurs différentes dans un colonne.
Soyons plus concret:
Je travaille sur un fichier d'expéditions de produits pendant 1 an. Donc le même produit peut être expédié plusieurs fois ( à des dates et/ou destinations différentes).

Ce que je cherche à obtenir, c'est le nombre de produits différents qu'on expédie/
Le fichier ressemble à ça:

Code produits Date d'expédition Departement d'expédition

9147 16/04/2010 75
3435 16/04/2010 65
1212 25/2/2010 21
9147 21/1/2010 44
3435 3/08/2010 13

Ici, le résultat serait : nbre de code produits expédiés = 3
Travaillant sur un fichier énorme, j'ai besoin d'une formule ou astuce.

Merci d'avance.

3 réponses

  • Votes
  • Date
  • Date décroissante
  1. Contributeur
    Tu fais une copie du fichier, sur laquelle tu appliques Supprimer les doublons : Il te restera un seul exemplaire de chaque code.
    1. je ne peux pas supprimer les doublons. En effet, j ai besoin de les conserver car ils me serviront dans d'autres calculs.
      Merci quand même
    2. Contributeur
      Je t'ai dit de faire UNE COPIE !

      Je ne suis pas demeuré à ce point-là ...
  2. Moi je te propose 2 solutions "vite fait" :

    https://www.cjoint.com/?1lEgo6j6COB

    * l'une passe par une petite formule (améliorable pour ne pas avoir à se baser sur un TCD)
    * l'autre n'employant que des TCD (ces derniers pouvant se mettre sur une autre feuille, ou dans un autre classeur).
    1. Contributeur
      Bonjour,

      Si tes codes sont bien bien numériques :
      =SOMMEPROD((FREQUENCE(A:A;A:A)>0)*1)

      Sinon un TCD comme montré par JoePJ

      eric
      1. Contributeur
        bonjour tous
        Celle là aussi qui marche num ou alpha
        matricielle;, à entrer avec ctrl +maj+entrée pour la mettre entre les accolades
        {=SOMME(SI(A:A<>"";1/NB.SI(A:A;B2:A:A)))]
        crdlmnt
      2. Contributeur
        Salut vaucluse,

        J'ai voulu tester ta formule et j'ai une erreur (j'ai pourtant enlevé le ] de fin)
        Pas le temps de chercher plus (boulot..) Si tu peux recontrôler stp.

        eric
      3. Contributeur
        Bonjour Eric

        Oui tu as raison, ,j'ai ajusté ma formule sur la colonne A:A, mais j'ai oublié d'enlever le B2 qui traînait:
        =SOMME(SI(A:A<>"";1/NB.SI(A:A;A:A)))
        celle là marche en matricielle
        Crdlmnt
      4. Contributeur
        #NOMBRE! encore...
        J'ai l'impression qu'elle n'aime pas les colonnes entières (sur 2003 en tout cas).
        Avec :
        =SOMME(SI(A1:A100<>"";1/NB.SI(A1:A100;A1:A100)))
        ça passe.

        eric
      5. Contributeur
        pourtant elle marche (au moins en 2007)
        voir ici, un mélange de num et d'alpha
        http://www.cijoint.fr/cjlink.php?file=cj201011/cijrMA7Nla.xls
        pour la bonne forme:
        je dois cette formule à notre amie commune Argixu
        bonne journée