Bonjour,
Je cherche à optimiser l'utilisation de l'autofilter. J'ai le code suivant qui réduit la plage au nombre de lignes dont la dernière cellule de la colonneest non vide. Les valeurs sont continues dans cette colonne!NomColRef
J'espérais que
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 lXlsRowNumber = .Cells(.Rows.Count, .Range("NomColRef").Column).End(xlUp).Row Set oXlsRangeCurrentRegion = .Range("A1").CurrentRegion.Resize(RowSize:=lXlsRowNumber) With oXlsRangeCurrentRegion .AutoFilterMode = True lIdxCol = .Range("NomColCrit").Column .AutoFilter Field:=lIdxCol, Criteria1:=IIf(Nz(oRecSet![Value], "") = "", "=", oRecSet![Value]) Set xlsRangeAutoFilter = .SpecialCells(xlCellTypeVisible) End With
Ne se ferait que sur.AutoFilter Field:=lIdxCol, Criteria1:=IIf(Nz(oRecSet![Value], "") = "", "=", oRecSet![Value])
Mais quand le critère est BlankoXlsRangeCurrentRegionalors ça filtre sur la totalité des lignes de la feuille soit 1047585 lignesCriteria1:="="
Merci par avance pour toute aide
Partager