Cellules vides et cellules non vides

Bonjour,

Je dois compter le nombre de cellules non vide d'une liste, jusque là pas de soucis j'utilise :

derniere_ligne = Sheets(1).Range("A1").End(xlDown).Row

Par contre, je dois ensuite compter le nombre de cellules non vide de la liste suivante qui se trouve en dessous de la précédente liste. Les 2 listes sont séparées par un nombre de cellule vide qui peut varier.

J'ai, en tout, 4 listes

J'ai essayé tant bien que mal d'utiliser plusieurs solutions mais sans succès malheureusement.

Je vous joins un fichier d'exemple

Merci d'avance

13classeur1.xlsm (10.36 Ko)

Bonjour,

    Dim ar As Range
    For Each ar In [A:A].SpecialCells(xlCellTypeConstants, 23).Areas
        MsgBox "lig 1    : " & ar.Row & vbLf & "nb lig : " & ar.Rows.Count
    Next ar

eric

Bonjour eriiic,

merci beaucoup ça fonctionne à merveille

Dernière petite question : est-ce qu'il est possible de compter uniquement la seconde liste tout en sachant que cette dernière peut commencer sur une cellule (de la colonne A toujours) aléatoire ?

Merci d'avance

Re,

    Dim pl As Range
    Set pl = [A:A].SpecialCells(xlCellTypeConstants, 23)
    If pl.Areas.Count > 1 Then
        MsgBox "Ref liste 2 : " & pl.Areas(2).Address & vbLf & "nb lig : " & pl.Areas(2).Rows.Count
    Else
        MsgBox "pas de 2nde liste"
    End If

eric

Un grand merci à toi, tu m'épate sur ta réactivité

Sam

Bonjour,

je ré-ouvre mon sujet car j'ai une autre problématique : est-ce qu'il est possible de travailler ensuite dans les zones en question ?

je m'explique : j'ai une colonne avec des dates (date de fin d'un dossier) et j'effectue des calculs du genre : si la date d'aujourd'hui est > à la date de fin alors le dossier est en retard, mais je n'arrive pas à travailler dans ces zones.

J'ai eu l'idée de copier chaque zone dans une feuille mais malheureusement cela ne me copie que la colonne A, voici le code :

Worksheets.Add
Sheets(1).Move After:=Sheets(3)

Dim pl As Range
Set pl = Sheets(2).[A16:A1000].SpecialCells(xlCellTypeConstants, 23)
pl.Areas(2).Rows.Copy _
Worksheets(3).Range("A1")

Si vous avez le solution sur un des 2 points

Merci d'avance

Bonjour,

Si tu ne copies que A il ne colle que A, rien que de très normal.

Et nous on est comme lui, incapable de deviner tes pensées pour savoir ce tu veux.

eric

Bonjour,

Je dois avouer que je me suis mal expliqué, désolé. Étant donné que je travaille sur un fichier de mon entreprise je ne peux pas vous le transmettre car confidentiel

Je viens de trouver une solution qui fonctionne donc sujet résolu.

Sam

Rechercher des sujets similaires à "vides"