Bonsoir à tous

je ne saisis pas encore toutes les subtilités de l'autofilter.
j'arrive à filtrer et obtenir les lignes affichées avec le visiblerow
mais quand je tente d'identifier toutes les lignes dans un range cela ne fonctionne pas

En effet TotalRange selectionne bien les lignes hormis le header mais semble t'il plus car quand je te tente d'afficher en listbox totalrange cela affiche tous les résultats entre

dans mon cas je voudrais pouvoir avoir seulement les lignes de l'autofilter..

quelqu'un pourrait il m'éclairer merci


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Private Sub List_Projects()
Dim Rng As Range
Dim derlign As Integer
Dim PJ_page As Worksheet
 
 Set PJ_page = Sheets("Projects")
 derlign = PJ_page.cells(Rows.Count, "A").End(xlUp).row
 
PJ_page.Range("A1").AutoFilter _
 field:=13, _
 Criteria1:="Active", _
 VisibleDropDown:=True
 
 cnt = 1
For Each cnt In Intersect(PJ_page.UsedRange, PJ_page.Range("A2:A" & derlign).SpecialCells(xlCellTypeVisible))
visiblerow = cnt.row
MsgBox (visiblerow)
Next
 
Set TotalRange = PJ_page.UsedRange 
Set TotalRange = TotalRange.Offset(1, 0).Resize(TotalRange.Rows.Count - 1, _
                                               TotalRange.Columns.Count)
 
Set Rng = TotalRange
 
End Sub