Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Probleme formule nbdif

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

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 !
 
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
 
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
 
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.
 
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

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Réponses
2
Affichages
93
Réponses
9
Affichages
470
Réponses
5
Affichages
212
Réponses
4
Affichages
812
Réponses
2
Affichages
614
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…