Je n'ai pas joint d'exemple car assez simple à expliquer:
En plage AB2:AB8 j'ai des valeurs à 2 caractères commençant par L (ex: L3)
En plage AC2:AC8, idem en commençant par C (ex: C4)
Je souhaiterais obtenir "oui" en AB9 s'il y a au moins 3 cellules remplies dans la plage AB2:AC8 (ex: L2 L5 C1) sinon "non"
Merci, j'ai essayé avec NB.SI avec gauche(), puis NBVAL mais le résultat est mauvais.
Bonne soirée
Function compter(zone_pour_compter As Range)
Dim cell As Range
Dim total As Integer
For Each cell In zone_pour_compter
If Left(cell, 1) = "L" Or Left(cell, 1) = "C" Then total = total + 1
Next cell
compter = total
End Function
JP
Si NBVAL ne retourne pas la bonne valeur, c'est sans doute parce que les cellules "vides" ne le sont pas vraiment. Peut-être contiennent-elles des chaînes vides.
Dans ce cas, un extrait de ton fichier aurait été tout de même le bienvenu.
Sauf que tu n'indiques aucunement comment sont obtenues les valeurs L1, L2, C4...car il n'y a à priori aucune raison pour que NBVAL ne te renvoie pas le résultat escompté !
A+
kjin
Bonsoir à tous et merci pour vos réponses.
Les cellules contiennent des formules SI avec "" par défaut (ce qui fausse NBVAL)
J'ai testé NB.SI(plage;"><") que je ne connaissais pas ? (merci Tibo) et c'est parfait.
Bonne soirée à tous et merci.