énumération de cellules

sylv@in

XLDnaute Junior
bonjour, je voudrais utiliser la fonction NB.SI qui compte le nombre de cellules correspondants a un critère dans une plage. Seulement, mes données ne sont pas situées dans une plage mais dans des cellules dispachées un peu partout.

Donc au lieu de faire = NB.SI(H1:H8;"0")
ce qui selectionnerai la plage de H1 a H8 et compterai le nombre de cases contenant 0.

Je voudrais pouvoir faire quelque chose dans ce style:
=NB.SI((J1;L7;M8);"0"))
ce qui me renverrai le nombre de case contenant 0 parmis J1,L7 et M8. Seulement cette syntaxe ne fonctionne pas...merci de votre aide
 

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : énumération de cellules

Bonjour,


Code:
Function NbSiMZ(champrech As Range, valCherchée)
  Application.Volatile
  temp = 0
  For i = 1 To champrech.Areas.Count
    For j = 1 To champrech.Areas(i).Count
      If valCherchée = champrech.Areas(i)(j) Then
        temp = temp + 1
      End If
    Next j
  Next i
  NbSiMZ = temp
End Function

=NbSiMZ((C3:C7;E5:E9;G7:G10);"a")

JB
Formation Excel VBA JB
 

Pièces jointes

  • FonctionNBSIMZ2.xls
    22 KB · Affichages: 48

Hervé

XLDnaute Barbatruc
Re : énumération de cellules

bonjour ^^

j'y vais aussi de ma petite fonction personnalisée:

=nbsi2((B5;B9;B12;D14;A1:A31);"0")

Code:
Public Function nbsi2(cellules As Range, critere)
Dim c As Range
 
For Each c In cellules
    nbsi2 = nbsi2 - (c.Text = critere)
Next c
 
End Function

bye
 

Discussions similaires

Statistiques des forums

Discussions
312 379
Messages
2 087 767
Membres
103 662
dernier inscrit
rterterert