Selection dans tableau filtrée
Bonjour à tous,
Un exemple tout simple de mon problème. Dans un onglet, commençant en A1, le tableau ci-dessous :
Prénom |
Nom |
Ville |
Lana |
Cally |
Marseille |
Liberty |
Virginia |
Paris |
Mara |
Gareth |
Lyon |
Adele |
Rudyard |
Paris |
Hedley |
Ezra |
Paris |
Beck |
Liberty |
Lyon |
Valentine |
Abdul |
Montpellier |
William |
Kylan |
Lyon |
Orli |
Kelly |
Lyon |
Lamar |
Lucas |
Paris |
Yen |
Jennifer |
Montpellier |
Le code ci-dessous me sélectionne bien la première ligne filtrée mais pas la seconde :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| Sub Macro1()
Dim O As Object 'déclare la variable O (Onglet)
Dim DL As Integer 'déclare la variable DL (Dernière Ligne)
Dim PL As Range 'déclare la variable PL (PLage)
Dim PLV As Range 'déclare la variable PLV (PLage Visible)
Set O = Sheets("Feuil1") 'définit l'onglet O
DL = O.Cells(Application.Rows.Count, 1).End(xlUp).Row 'définit la dernière ligne éditée DL de la colonne 1 (=A) de l'onglet O
Set PL = O.Range("A2:A" & DL) 'définit la plage PL
O.Range("A1").AutoFilter Field:=3, Criteria1:="Montpellier" 'filtre l'onglet O sur les villes avec "Montpellier" comme critère
Set PLV = PL.SpecialCells(xlCellTypeVisible) 'définit la plage PLV
PLV.Cells(1, 1).Select 'sélectionne bien la cellule ligne 1, colonne 1 de PLV soit A8
PLV.Cells(2, 1).Select 'sélectionne A9 et non pas A12 comme j'aurais souhaité ?
End Sub |
L'avant dernière ligne du code ne fonctionne pas comme je l'aurais souhaité. Quelqu'un aurait-il la méthode/solution pour y parvenir ?