Compter cellules pleines

Résolu/Fermé
heyitsjusttiffany Messages postés 82 Date d'inscription samedi 3 octobre 2015 Statut Membre Dernière intervention 10 décembre 2021 - 18 août 2016 à 09:44
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 - 18 août 2016 à 11:52
Bonjour !

Je recherche une macro me permettant de compter les cellules pleines sur une seule colonne ; mais je n'en trouve pas sur internet. En fait, pour détailler un peu, j'ai une liste en colonne A (avec un en-tête), et je voudrais compter le nombre de cellules pleines en excluant l'en-tête. Je ne pense pas que ce soit très compliqué, mais en étant débutante, je n'ai aucune idée de comment faire...

Ou bien y a-t-il une fonction Excel qui permet de faire ça ?

Merci d'avance pour vos réponses !

2 réponses

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 686
18 août 2016 à 09:51
Bonjour,

En formule
=NBVAL(A:A)-1

ou en macro
résultat = Application.WorksheetFunction.CountA(Range("A:A")) - 1
0
heyitsjusttiffany Messages postés 82 Date d'inscription samedi 3 octobre 2015 Statut Membre Dernière intervention 10 décembre 2021 23
18 août 2016 à 10:00
Avec la macro, un message d'erreur apparaît en séléctionnant "A:A".

Erreur de compilation:
Instruction incorrecte à l'extérieur d'une procédure.

En revanche, la formule marche bien ;) !

Entre temps, j'ai continué de cherché en attendant une réponse et j'ai miraculeusement trouvé une formule (comme quoi quand on cherche sans espérer trouver, c'est bien à ce moment qu'on trouve la solution) :

Sub CountNonBlanks()
'Updateby20140310
Dim rng As Range
Dim WorkRng As Range
Dim total As Long
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each rng In WorkRng
    If Not IsEmpty(rng.Value) Then
        total = total + 1
    End If
Next
MsgBox "There are " & total & " not blank cells in this range."
End Sub
https://www.extendoffice.com/documents/excel/1559-excel-count-empty-or-nonblank-cells.html

Mais la formule est bien plus simple à retenir pour réutiliser à l'avenir, merci beaucoup !
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 686
18 août 2016 à 11:52
Bonjour,

Erreur de compilation:
Instruction incorrecte à l'extérieur d'une procédure.

Comme une formule est associée à une cellule, une instruction VBA doit être intégrée à une procédure, tu ne peux pas exécuter une ligne toute seule !
0
Arkana0 Messages postés 4399 Date d'inscription mercredi 11 février 2009 Statut Modérateur Dernière intervention 10 février 2023 181
Modifié par Arkana0 le 18/08/2016 à 09:56
Bonjour, il y a la fonction NBVAL() qui fait ça.
Equivalent en VBA : WorksheetFunction.CountA()
0