XL 2010 bill

billABDELL

XLDnaute Nouveau
dans Excel 2010 français, je cherche une formule qui compte le nombre de valeurs uniques de deux plages non contiguës
 

job75

XLDnaute Barbatruc
VB:
Function Compte_Unique(P1 As Range, Optional P2 As Range)
Dim d As Object, c As Range
If P2 Is Nothing Then Set P2 = P1
Set d = CreateObject("Scripting.Dictionary")
For Each c In Union(P1, P2)
    If CStr(c) <> "" Then If Not d.exists(CStr(c)) Then Compte_Unique = Compte_Unique + 1
Next
End Function
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonsoir à tous,

Une autre solution par formules pour deux plages rectangulaires quelconques (multi-lignes et/ou multi-colonnes) à l'aide de deux colonnes auxiliaires qui sont remplies par formules.

  • Le premier tableau ou plage est nommé t_1 (via le menu formules/Définir un nom)
  • Le second tableau ou plage est nommé t_2 (via le menu formules/Définir un nom)

On va déplier chacun des deux tableaux en une seule colonne :

  • Une première formule en J1 à recopier jusqu'à la ligne 1000
  • Une seconde formule en K1 à recopier jusqu'à la ligne 1000

On calcul le nombre de valeurs uniques par une troisième formule en L2.


nota 1 : La ligne de recopie (ici 1000) doit être supérieure au nombre d'éléments du tableau. Pour l'exemple, 1000 est bien trop grand. La ligne 100 aurait suffit puisque le plus grand des deux tableaux (qui est t_2) n'a que 68 éléments (enfin pour la valeur 1000, ça ne mange pas de pain - comme on dit 😜)
 

Pièces jointes

  • billABDELL- Nbr val unique- v1.xlsx
    63.4 KB · Affichages: 8
Dernière édition:

Statistiques des forums

Discussions
314 634
Messages
2 111 423
Membres
111 132
dernier inscrit
dominique001