Probleme formule nbdif

cocktail

XLDnaute Occasionnel
Bonjour à tous,

Tous mes vœux numériques pour cette nouvelle année :)

Je sollicite votre aide sur la problématique suivante :

J'ai une formule nbdif via une macro qui a été implémentée par l'un des vôtres qui me permets de compter le nombre de personnes différentes que j'ai. La formule fonctionne bien mais elle me comptabilise les celllules vides comme une personne, ce qui me crée donc à chaque fois un écart d'une personne. :-(

Je vous joins un fichier test pour une parfaite compréhension.

merci d'avance pour votre aide précieuse.

Cocktail !
 

Chris24

XLDnaute Impliqué
Re : Probleme formule nbdif

Bonjour

cette fonction d'un membre de ce forum ne compte pas les cellules vides

Function NbDoublon(Plage As Range)
Dim V As New Collection, c As Range
Application.Volatile (True)
Application.ScreenUpdating = False
On Error Resume Next
For Each c In Plage
If c <> "" Then V.Add c.Value, CStr([c])
Next c
On Error GoTo 0
NbDoublon = V.Count
End Function

Cordialement
 

ROGER2327

XLDnaute Barbatruc
Re : Probleme formule nbdif

Bonjour à tous.


Une autre fonction :​
Code:
'|¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯|
'|Ajouter la référence à la bibliothèque Microsoft Scripting Runtime (scrrun.dll) au projet !|
'|___________________________________________________________________________________________|

Function nbValDiff&(r As Range, Optional CompareOption%)
Dim i&, j&, v, d As New Scripting.Dictionary
  v = r.Value
  d.CompareMode = CompareOption
  If VarType(v) > vbArray Then
    For i = 1 To UBound(v, 1): For j = 1 To UBound(v, 2): d(v(i, j)) = 1 + d(v(i, j)): Next j, i
  Else
    d(v) = 1 + d(v)
  End If
  nbValDiff = d.Count + d.Exists(Empty)
End Function
Mode d'emploi :


  • =nbValDiff(A1:A30) ou =nbValDiff(A1:A30;0) renvoie le nombre de valeurs distinctes dans la plage A1:A30 en excluant les cellules vides. La fonction distingue la casse.
  • =nbValDiff(A1:A30;1)renvoie le nombre de valeurs distinctes dans la plage A1:A30 en excluant les cellules vides. La fonction ignore la casse.


ℝOGER2327
#8189


Lundi 2 Gueules 143 (Saint Sigisbée, eunuque - fête Suprême Quarte)
7 Pluviôse An CCXXIV, 6,1282h - amadouvier
2016-W04-3T14:42:27Z
 

cocktail

XLDnaute Occasionnel
Re : Probleme formule nbdif

Merci Roger pour ta propositiin et Merci à tous pour votre tentatvive d'aide mais malheureusement ca ne marche pas, peut-être et sans doute quelque chose que je fais mal.

Dommage que l'on soit limité à 200k pour l'envoi d'un fichier :-(


bonne journée à tous.
 

ROGER2327

XLDnaute Barbatruc
Re : Probleme formule nbdif

Re...


Merci Roger pour ta propositiin et Merci à tous pour votre tentatvive d'aide mais malheureusement ca ne marche pas, peut-être et sans doute quelque chose que je fais mal.
(...)
Peut-être...​


ℝOGER2327
#8192


Vendredi 6 Gueules 143 (Sainte Touche, postulante - fête Suprême Quarte)
11 Pluviôse An CCXXIV, 0,2087h - éllébore
2016-W04-7T00:30:03Z
 

Pièces jointes

  • Comptage de valeurs.xlsm
    20.3 KB · Affichages: 53

Discussions similaires

Réponses
1
Affichages
130
Compte Supprimé 979
C

Statistiques des forums

Discussions
312 332
Messages
2 087 364
Membres
103 528
dernier inscrit
maro