Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

avec un filtre, comment toujours être en haut de liste ?

2 réponses
Avatar
Jean-Claude
Bonjour,

j'ai une feuille avec 5 lignes d'en-tête (délimitées par des volets
figés), suivis d'un filtre sur les lignes qui suivent. Je positionne les
critères du filtre par macro en fonction de certaines données saisies
sur les 5 premières lignes.
Tout fonctionne bien.

Si je "scrolle" vers le bas avec la souris, et change les critères du
filtre, des lignes différentes s'affichent, normal.
Mais du fait du scroll, les premières lignes qui devraient être
affichées sont dissimulées. Pour les voir, je dois à nouveau scroller
vers le haut (ce que je dois faire systématiquement pour être sûr qu'il
n'y a effectivement aucune ligne, pas génial).

Y a-t-il un moyen (par macro) pour que le résultat du filtre s'affiche
complètement ? C'est-à-dire ligne 1 à 5, puis première ligne filtrée,
puis deuxième...
Je pensais bêtement pouvoir simuler le déplacement de la cellule en
cours (je la positionne en ligne 5, simule "flèche-bas") mais je ne
trouve pas comment faire cela par macro !

Merci d'avance de votre aide.

Jean-Claude

2 réponses

Avatar
isabelle
bonjour Jean-Claude,

PremiereLigne = ActiveSheet.AutoFilter.Range.Offset(1, 0). _
Resize(RowSize:¬tiveSheet.AutoFilter.Range.Rows.Count - 1). _
SpecialCells(xlCellTypeVisible).Rows(1).Row
Application.Goto Range("A" & PremiereLigne), scroll:=True

isabelle

Jean-Claude a écrit :
Bonjour,

j'ai une feuille avec 5 lignes d'en-tête (délimitées par des volets
figés), suivis d'un filtre sur les lignes qui suivent. Je positionne
les critères du filtre par macro en fonction de certaines données
saisies sur les 5 premières lignes.
Tout fonctionne bien.

Si je "scrolle" vers le bas avec la souris, et change les critères du
filtre, des lignes différentes s'affichent, normal.
Mais du fait du scroll, les premières lignes qui devraient être
affichées sont dissimulées. Pour les voir, je dois à nouveau scroller
vers le haut (ce que je dois faire systématiquement pour être sûr
qu'il n'y a effectivement aucune ligne, pas génial).

Y a-t-il un moyen (par macro) pour que le résultat du filtre s'affiche
complètement ? C'est-à-dire ligne 1 à 5, puis première ligne filtrée,
puis deuxième...
Je pensais bêtement pouvoir simuler le déplacement de la cellule en
cours (je la positionne en ligne 5, simule "flèche-bas") mais je ne
trouve pas comment faire cela par macro !

Merci d'avance de votre aide.

Jean-Claude


Avatar
Jean-Claude
isabelle a écrit :
bonjour Jean-Claude,

PremiereLigne = ActiveSheet.AutoFilter.Range.Offset(1, 0). _
Resize(RowSize:¬tiveSheet.AutoFilter.Range.Rows.Count - 1). _
SpecialCells(xlCellTypeVisible).Rows(1).Row
Application.Goto Range("A" & PremiereLigne), scroll:=True

isabelle




Bonjour,

la solution en l'état ne fonctionnait pas, mais en la simplifiant, cela
répond parfaitement à mon besoin :
Application.Goto Range("A" &
Range("A6:A900").SpecialCells(xlCellTypeVisible).Rows(1).Row), Scroll:=True

Merci bien Isabelle, et bonne fin de week end...

Jean-Claude