Bonjour,
Après avoir épluché pas mal de topic et d'exemple sur cette fonction je viens demander votre aide car je coince sur mon projet.
Partons de la base,
J'ai un tableau sous forme de 'bloc' de 4 lignes avec un espace entre chaque. Chaque bloc se répète avec des données différentes dans certaines cellules mais parfois elles sont identiques.
J'aimerais dans un premier temps pouvoir 'compter' le nombre de bloc identique qui se répète en apposant le résultat dans une cellule adjacente.
Exemple :
Bloc 1 - 5x
Bloc 2 - 4x
Une fois cette somme obtenue, qui correspond plus ou moins à un nb.si.ens, je supprime les bloc 'doublons' pour n'avoir q'un seul bloc avec le nb de répétition à coté.
J'ai d'abord pensé à utiliser un compteur avec la fonction CPL mais j'ai coincé du fait qu'il faut plusieurs critères dans le compteur.
Par exemple dans mon cas précis ,
Sur plage H:L50000,
Si les valeurs des cellules H3, H4 et L5 se retrouvent en doublon sur l'ensemble de la plage, alors compter le nombre de fois ou elles se répètent et déposer le résultat en O3.
Dans un premier, j'ai donc voulu essayer la fonction ' Application.WorksheetFunction.CountIfs ' sur le premier bloc et voir si ça fonctionne pour ensuite l'étendre aux autres blocs.
Je suis donc parti ainsi :
Ce résultat me renvoie la valeur "0", au lieu de la somme présente dans les données.
Je précise que les données en H3 et H4 sont du texte, et en L5 des chiffres. Peut-être le problème vient-il de là ?
J'obtiens le même résultat avec la fonction NB.SI.ENS qui m'affiche tout le temps zéro. Qui est pourtant censé compter Si Valeur_A ET Valeur_B sur plage X alors compter.
Je ne suis qu'un débutant qui bredouille et je sollicite votre aide pour une éventuelle piste.
D'avance merci
Après avoir épluché pas mal de topic et d'exemple sur cette fonction je viens demander votre aide car je coince sur mon projet.
Partons de la base,
J'ai un tableau sous forme de 'bloc' de 4 lignes avec un espace entre chaque. Chaque bloc se répète avec des données différentes dans certaines cellules mais parfois elles sont identiques.
J'aimerais dans un premier temps pouvoir 'compter' le nombre de bloc identique qui se répète en apposant le résultat dans une cellule adjacente.
Exemple :
Bloc 1 - 5x
Bloc 2 - 4x
Une fois cette somme obtenue, qui correspond plus ou moins à un nb.si.ens, je supprime les bloc 'doublons' pour n'avoir q'un seul bloc avec le nb de répétition à coté.
J'ai d'abord pensé à utiliser un compteur avec la fonction CPL mais j'ai coincé du fait qu'il faut plusieurs critères dans le compteur.
Par exemple dans mon cas précis ,
Sur plage H:L50000,
Si les valeurs des cellules H3, H4 et L5 se retrouvent en doublon sur l'ensemble de la plage, alors compter le nombre de fois ou elles se répètent et déposer le résultat en O3.
Dans un premier, j'ai donc voulu essayer la fonction ' Application.WorksheetFunction.CountIfs ' sur le premier bloc et voir si ça fonctionne pour ensuite l'étendre aux autres blocs.
Je suis donc parti ainsi :
VB:
Sub COUNT()
'declare la variable
Dim ws As Worksheet
Set ws = Worksheets("COUNTIFS")
' fonction Countifs
ws.Range("o3") = Application.WorksheetFunction.CountIfs(ws.Range("h3:h50000"), ("h3"), ws.Range("h3:h50000"), ("h4"), ws.Range("h3:h50000"), ("L5"))
End Sub
Ce résultat me renvoie la valeur "0", au lieu de la somme présente dans les données.
Je précise que les données en H3 et H4 sont du texte, et en L5 des chiffres. Peut-être le problème vient-il de là ?
J'obtiens le même résultat avec la fonction NB.SI.ENS qui m'affiche tout le temps zéro. Qui est pourtant censé compter Si Valeur_A ET Valeur_B sur plage X alors compter.
Je ne suis qu'un débutant qui bredouille et je sollicite votre aide pour une éventuelle piste.
D'avance merci