Bonjour,
Je souhaite comptabiliser le nombre de cellule non vide d'une liste sauf ceux dont j'ai barré les noms ou mis un signe distinctif.
J'ai essayé "=NBVAL(D5:35)-NBVAL(D5:35<>"-")"
"=NBVAL(D5:35)-NB.SI(D5:35;"-")"
et "=NBVAL(D5:35<>"-")"
J'ai également remplacé le "-" par "*" et "1" mais cela ne fonctionne pas.
Est-ce possible avec une formule excel ou dois-je passer par le VBA que je ne connais absolument pas ?
Mon fichier en pj.
Bonjour pierrejean,
Merci, c'est exactement ça ! Sauf que ça ne fonctionne pas si je récupère cette formule dans un autre fichier excel...
Faut-t-il "débloquer" quelque chose ???
Re
Il faut copier la fonction dans le Module1 des fichiers
Touches Alt +F11 pour aller dans l’éditeur Vba
Cliquer ensuite sur Module1
Copier la fonction
Répéter avec l'autre fichier et coller la fonction
En cas de problème ne pas hésiter a revenir
Sans avoir vu la fonction de pierrejean, à mettre dans un module standard.
VB:
Function NonBarré(plage As Range) As Integer
Dim cel As Range, temp
Application.Volatile True
For Each cel In plage
If cel.Font.Strikethrough = False And cel <> vbNullString Then _
temp = temp + 1: NonBarré = temp
Next cel
End Function
Mais pour aider d'autres, car j'ai dû insérer le Module1 (absent) dans mon fichier, soit :
- Alt+F11 -ou onglet "développeur", puis "visual basic"-
- Onglet "insertion"
- puis "module" et là, coller la formule :
Function nb_pas_barre(zone)
For Each cel In zone
If cel.Value <> "" And cel.Font.Strikethrough = False Then
nb = nb + 1
End If
Next
nb_pas_barre = nb
End Function