[déplacer VB.NET -> VBA] compte cellules non-vides sans sélection [Résolu]

Messages postés
22
Date d'inscription
jeudi 18 juin 2009
Statut
Membre
Dernière intervention
10 mai 2010
- - Dernière réponse : PCPT
Messages postés
13368
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
- 15 déc. 2009 à 16:49
Bonjour, je souhaite compter le nombre de cellules non vides dans une colonne sans avoir à afficher la feuille en question, voici mon code mais qui, lors de l'éxécution, fait "clignoter" la feuille car il montre à chaque fois la feuille !

Merci d'avance.

Sheets("Feuil1").Select
Nb = WorksheetFunction.CountA(Columns("A:A"))
Sheets("MENU").Select
Range("H16") = Nb

Sheets("Feuil1").Select
Nb = WorksheetFunction.CountA(Columns("Z:Z"))
Sheets("MENU").Select
Range("H17") = Nb
Afficher la suite 

6 réponses

Meilleure réponse
Messages postés
13368
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
23
3
Merci
VBA !!


application.screenupdating=false
dim nb as long
Sheets("Feuil1").Select
Nb = WorksheetFunction.CountA(Columns("A:A"))
Sheets("MENU").Select
Range("H16") = Nb

Sheets("Feuil1").Select
Nb = WorksheetFunction.CountA(Columns("Z:Z"))
Sheets("MENU").Select
Range("H17") = Nb
application.screenupdating=true


[hr]

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 121 internautes nous ont dit merci ce mois-ci

Commenter la réponse de PCPT
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
211
0
Merci
Bonjour,

Suffit peut-être de ne pas utiliser les select .... (pas nécessaire)

____________________
Très intéressante fable, L'OISELEUR, L'AUTOUR ET L'ALOUETTE !
Cliquer sur "Réponse acceptée" (en bas d'une solution avérée adéquate) rendra service à d'autres. PENSEZ-Y.
Commenter la réponse de ucfoutu
Messages postés
14010
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
59
0
Merci
Salut
Quelle feuille fait-il clignoter ? Feuil1 ou Menu ?
C'est dû au fait que tu fais un .Select

Comme expliqué dans l'aide de VBA sur la WorksheetFunction (il te suffisait d'appuyer sur F1), il te suffit de créer une variable Range :
    Dim myRange As Range
    Set myRange = Worksheets("Feuil1").Range("A:A")
    MsgBox Application.WorksheetFunction.CountA(myRange)

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Commenter la réponse de cs_Jack
Messages postés
1839
Date d'inscription
vendredi 13 mai 2005
Statut
Membre
Dernière intervention
20 novembre 2013
8
0
Merci
Salut,

autre solution:

dim nb as long
With Sheets("Feuil1")
    Nb = WorksheetFunction.CountA(.Columns("A"))
    Sheets("MENU").Range("H16").Value = Nb
    Nb = WorksheetFunction.CountA(.Columns("Z"))
    Sheets("MENU").Range("H17").Value = Nb
End with



A+
Commenter la réponse de bigfish_le vrai
Messages postés
22
Date d'inscription
jeudi 18 juin 2009
Statut
Membre
Dernière intervention
10 mai 2010
1
0
Merci
OK c'est bon avec la méthode de PCPT


Merci encore.

PS : comment faire pour que ce mesage soit mis en résolu ?
je suis très débutant....
Commenter la réponse de fazpedro
Messages postés
13368
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
23
0
Merci
il est flaggué "résolu" maintenant que tu as validé ma réponse

(son signe distinctif n'est pas "[résolu]....titre" comme certains sites, ici il apparaitra dans les recherches avec une coche verte)

++
Commenter la réponse de PCPT