Bonjour,

J'utilise cette formule dans une feuille excel:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
=SUMPRODUCT(1/COUNTIF(A2:A18;A2:A18))
Elle me sert à compter le nombre de valeurs différentes dans une colonne.
Le problème, c'est que ma colonne est de longueur variable et je souhaite donc automatiser ceci avec une petite macro
(puisque si je prend la colonne entière, il me dit qu'il ne peut pas diviser par 0 et donc bug).

Voici ma tentative qui ne fonctionne pas.
Qu'est ce que je dois modifier pour y remédier?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
Option Explicit
 
Sub CompterNombrePalettes()
    Dim NBpal As Integer
    NBpal = Application.WorksheetFunction.CountA(Range("$A:$A"))
    Cells(1, 10) = Application.WorksheetFunction.SumProduct(1 / Application.WorksheetFunction.CountIf(Range("A2", Cells(2, 1).Offset(NBpal -2, 0)), Range("A2", Cells(2, 1).Offset(NBpal -2, 0))))
End Sub
Merci