XL 2013 Nombre de valeurs différentes dans un tableau

MACx

XLDnaute Occasionnel
Bonjour à vous et bien sûr Excellent année 2016, tout plein de formules et de casses têtes ;)

En voici une qui devrait amuser les plus experts:

Dans le tableau ci-joint il y a des cellules remplies (d'autres pas) avec des valeurs qui parfois se répètent.
Mon but est de connaître le nombre de valeurs différentes dans la totalité du tableau (sans compter deux fois la même valeur).

Merci d'avance à celui ou celle qui saura me trouver LA ou une solution...
 

Pièces jointes

  • NbDifferents.MACx.v1.xlsx
    122.8 KB · Affichages: 49
  • NbDifferents.MACx.v1.xlsx
    122.8 KB · Affichages: 47

MACx

XLDnaute Occasionnel
Re : Nombre de valeurs différentes dans un tableau

Merci Pierrejean !
Mais est-il possible d'afficher le résultat dans une cellule et non dans un pop-up ?
Et l'idéal serait sans passer par des macro :eek: Mais sinon je suis preneur quand même.
 

pierrejean

XLDnaute Barbatruc
Re : Nombre de valeurs différentes dans un tableau

Re

Sans passer par macro je ne sais pas faire !!
Voici une autre manière de faire:
En feuil2 les différents nombres et leur total
 

Pièces jointes

  • NbDifferents.MACx.v1.xlsm
    194.8 KB · Affichages: 37
  • NbDifferents.MACx.v1.xlsm
    194.8 KB · Affichages: 46

Chris24

XLDnaute Impliqué
Re : Nombre de valeurs différentes dans un tableau

Bonjour

une solution sans macro sur un échantillon du fichier

=SOMMEPROD((A2:Y26<>"")/(NB.SI(A2:Y26;A2:Y26)+(A2:Y26="")))

Temps de calcul pour 10 000 lignes prohibitif chez moi

Bonne journée
 

Pièces jointes

  • NbDifferents.MACx.v1.xlsx
    126.9 KB · Affichages: 33
  • NbDifferents.MACx.v1.xlsx
    126.9 KB · Affichages: 35
Dernière modification par un modérateur:

MACx

XLDnaute Occasionnel
Re : Nombre de valeurs différentes dans un tableau

R@chid,
Merci pour ta solution qui est super mega rapide :)
Mais je ne comprends pas pourquoi je n'obtiens pas le même résultat que Chris24 et pierrejean qui eux obtiennent 5378 (même avec le temps de calcul prohibitif) alors que ta formule donne comme résultat 4392.

Merci en tous cas de votre collaboration , j'approche d'un résultat satisfaisant :)
 

Chris24

XLDnaute Impliqué
Re : Nombre de valeurs différentes dans un tableau

Bonjour R@chid

Sauf erreur de ma part ta formule ne renvoie pas le bon résultat

Cordialement

Edit je n'avais pas vu les réponses de MACx et R@chid
 
Dernière modification par un modérateur:

MACx

XLDnaute Occasionnel
Re : Nombre de valeurs différentes dans un tableau

Je ne l'avais pas vu non plus. (le post #8)
Maintenant ça marche !
Et finalement la deuxième solution de pierrejean et la matricielle de R@chid.
Chris24, je garde ta formule car elle me sert pour des tableaux plus petits ;)
Merci à vous 3 de m'avoir apporté plus de solutions que j'en espérais.
@+
 

MACx

XLDnaute Occasionnel
Re : Nombre de valeurs différentes dans un tableau

PierreJean,
J'ai un petit soucis (je suis nuls en macros)
en realité mon tableau commence à F2
Du coup j'ai essayé de modifié ta formule mais cela ne fonctionne pas.
ça bloque dès la première ligne : "dercol = Cells(1, Columns.Count).End(xlToLeft).Column"
Option Explicit

Sub NbValeurs()
dercol = Cells(1, Columns.Count).End(xlToLeft).Column
derlin = Cells(Rows.Count, 1).End(xlUp).Row
tablo = Range("F2:" & Cells(derlin, dercol).Address)
Set dico = CreateObject("Scripting.dictionary")
For n = LBound(tablo, 1) To UBound(tablo, 1)
For m = LBound(tablo, 2) To UBound(tablo, 2)
If tablo(n, m) <> "" Then
x = tablo(n, m)
dico(x) = x
End If
Next
Next
Sheets("Feuil5").Range("A1") = "ID Patients"
Sheets("Feuil5").Range("A2").Resize(dico.Count) = Application.Transpose(dico.keys)
Sheets("Feuil5").Range("B1") = "Nombre de Patients"
Sheets("Feuil5").Range("B2") = dico.Count
Sheets("Feuil5").Select
End Sub

Si tu pouvais m'aider.
Merci
 

MACx

XLDnaute Occasionnel
Re : Nombre de valeurs différentes dans un tableau

Euhhh, pourquoi 2 et non 6 ?
Si je suis une certaine logique, le 1 de tout a l'heure c'est parce que ça commençait la première colonne (A) donc si ça commence a la sixième colonne (F), donc 6... Mais pourquoi 2?
Merci pour cet éclaircissement.
 

pierrejean

XLDnaute Barbatruc
Re : Nombre de valeurs différentes dans un tableau

Re

2 est la ligne de début et non la colonne

Il s'agit de chercher la dernière colonne non vide dans la ligne 2
Cells(2,columns.count) est la dernière cellule a doite et on repart vers la gauche (xltoleft) pour avoir la dernière cellule non vide
pour la ligne par contre il faudra effectivement utiliser le 6 comme ceci

derlin = Cells(Rows.Count, 6).End(xlUp).Row
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 845
Messages
2 092 770
Membres
105 529
dernier inscrit
StarExcel