Macro compter cellules non vides colonne visibles

Salut,

Tout d'abord, la fonction sous-total 109 ne fonctionne pas en colonnes.

J'ai donc pu trouver sur le forum une macro qui fonctionne parfaitement pour additionner seulement les données des colonnes visibles en créant une nouvelle formule intitulée SommeVisibles (macro que j'utilise) :

Function SommeVisibles(champ As Range)
  Application.Volatile
  t = 0
  For Each c In champ
    If Not c.EntireRow.Hidden And Not c.EntireColumn.Hidden Then
      t = t + c.Value
    End If
  Next c
  SommeVisibles = t
End Function

Celle-ci fonctionne avec une macro private_sub (pourquoi?):

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  Calculate
End Sub

J'aimerais avoir la même pour compter les cellules non vides dans une colonne, j'ai essayé ça mais j'ai une erreur #VALEUR

Function NbVisibles(champ As Range)
  Application.Volatile
  t = 0
  For Each c In champ
      t = t + c.CountA
  Next c
  NbVisibles = t
End Function

Une dernière question, plusieurs solutions existent sur le net, mais lorsque je fais un copier/coller sur VBA (sur module 1 ou sur la feuille concernée), comment je fais pour ensuite activer la macro?? (pourtant j'adapte la plage et je rajoute sub() et endsub () )

Exemple :

Range("A2:A1000").SpecialCells(xlCellTypeVisible).Count

Merci, j'espère avoir été assez clair

Je joins un fichier excel simplifié qui sera peut-etre plus parlant pour vous!

47classeur1.xlsm (19.76 Ko)

Bonjour

à tester

crdlt,

André

53classeur1-test.xlsm (25.59 Ko)

Bonjour Andre,

Merci beaucoup pour votre réponse.

Cependant votre solution ne semble pas fonctionner chez moi, premièrement ma formule SommeVisibles ne fonctionne plus, et ensuite la formule Nb.visibles non plus

Rechercher des sujets similaires à "macro compter vides colonne visibles"