XL 2019 Sélectionner dernière cellule visible colonne filtrée

  • Initiateur de la discussion Initiateur de la discussion duplaly
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

duplaly

XLDnaute Occasionnel
Bonjour
J'ai besoin d'aide et j'explique mon problème.
Comment sélectionner la dernière cellule visible de la colonne A qui est filtrée?

Voici mon code avec le quel, j'arrive à sélectionner la première cellule visible de la colonne «A»!
Dim vb As String
Dim vc As String

LastRow = Sheets("Commande").Cells(Rows.Count, 1).End(xlUp).Row
vb = Format(Range("A2:A" & LastRow).SpecialCells(xlCellTypeVisible).Cells(1), "d mmm yyyy")

Comment écrire le code pour sélectionner la dernière cellule visible de la colonne «A» qui est filtrée?

LastRow = Sheets("Commande").Cells(Rows.Count, 1).End(xlUp).Row
vc = Format(Range("A2:A" & LastRow).SpecialCells(xlCellTypeVisible).Cells(????), "d mmm yyyy")

Merci de m'aider!
 
Bonjour @duplaly,

Si vous connaissez le numéro de la dernière cellule visible de la colonne A (LastRow) alors la dernière cellule visible de la colonne A est Cells(LastRow,"1) ou Cells(LastRow,"a") ou Range("A" & LastRow)
et dans ce cas : vc =Format(Cells(LastRow,"a),"d mmm yyyy")

Pour tester:
Code:
Sub test()
Dim LastRow As Long, vc As String
   With Sheets("Commande")
      LastRow = .Cells(Rows.Count, "a").End(xlUp).Row
      vc = Format(.Cells(LastRow, "a"), "d mmm aaaa")
      MsgBox vc
   End With
End Sub
 
Dernière édition:
Bonjour,

Une plage Filtrée contient souvent plusieurs plages de cellules.
Méthode longue avec les aires de plage
VB:
Sub truc()
    Dim plg As Range
    Dim LastRow As Long
    With Sheets("Commandes")
        LastRow = .Cells(Rows.Count, 1).End(xlUp).Row
        With .Range("A2:A" & LastRow).SpecialCells(xlCellTypeVisible)
            Set plg = .Areas(.Areas.Count)
            Debug.Print plg.Cells(plg.Count).Address
        End With
    End With
End Sub
Méthode courte avec Find
Code:
Sub Truc_2()
   Debug.Print Sheets("Tableau de données").Columns(1).Find("*", , , , xlByRows, xlPrevious).Address
End Sub


cordialement
[Edit] hello @JHA [/Edit]
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
500
Réponses
3
Affichages
202
Réponses
8
Affichages
495
Retour