ta ligne de commande donne ton nombre de lignes, et tu nous demande comment obtenir un nombre de lignes ?
c'est pas clair....
anonymousA
Bonjour,
si tu es sur que toutes les cellules d'une colonne au moins contiennent toujours une donnée, utiliser p.e si c'est la 1ere colonne de ta plage filtrée qui contient pour toutes les cellules une donnée MsgBox Application.WorksheetFunction.Subtotal(3, Range("_FilterDatabase").Columns(1)) - 1 (ici le -1 est pour ne pas tenir compte de la ligne d'entête eventuelle).
Si les conditions ne sont pas réunies , il faut s'y prendre autrement mais de toute façon, c'est toujours possible de récupérer le nombre de lignes issues d'un filtre. p.e For Each are In Range("_FilterDatabase").SpecialCells(xlCellTypeVisible).Areas nblignes = are.Rows.Count + nblignes Next MsgBox nblignes - 1 (ici encore le -1 c'est pour enlever l'entete)
A+
Bonjour,
si tu es sur que toutes les cellules d'une colonne au moins contiennent
toujours une donnée, utiliser p.e si c'est la 1ere colonne de ta
plage filtrée qui contient pour toutes les cellules une donnée MsgBox
Application.WorksheetFunction.Subtotal(3,
Range("_FilterDatabase").Columns(1)) - 1 (ici le -1 est pour ne pas
tenir compte de la ligne d'entête eventuelle).
Si les conditions ne sont pas réunies , il faut s'y prendre autrement
mais de toute façon, c'est toujours possible de récupérer le nombre
de lignes issues d'un filtre.
p.e
For Each are In
Range("_FilterDatabase").SpecialCells(xlCellTypeVisible).Areas
nblignes = are.Rows.Count + nblignes
Next
MsgBox nblignes - 1 (ici encore le -1 c'est pour enlever l'entete)
si tu es sur que toutes les cellules d'une colonne au moins contiennent toujours une donnée, utiliser p.e si c'est la 1ere colonne de ta plage filtrée qui contient pour toutes les cellules une donnée MsgBox Application.WorksheetFunction.Subtotal(3, Range("_FilterDatabase").Columns(1)) - 1 (ici le -1 est pour ne pas tenir compte de la ligne d'entête eventuelle).
Si les conditions ne sont pas réunies , il faut s'y prendre autrement mais de toute façon, c'est toujours possible de récupérer le nombre de lignes issues d'un filtre. p.e For Each are In Range("_FilterDatabase").SpecialCells(xlCellTypeVisible).Areas nblignes = are.Rows.Count + nblignes Next MsgBox nblignes - 1 (ici encore le -1 c'est pour enlever l'entete)