Sélection de la 1ère ligne du résultat d'un filtrage Excel

Résolu
CerberusPau Messages postés 377 Date d'inscription lundi 3 avril 2006 Statut Membre Dernière intervention 22 août 2018 - 23 mai 2007 à 16:42
CerberusPau Messages postés 377 Date d'inscription lundi 3 avril 2006 Statut Membre Dernière intervention 22 août 2018 - 24 mai 2007 à 22:31
Bonjour à tous,

Dans un tableau Excel, j'utilise l'action d'un filtrage (sélection dans la liste du filtre de colonne)
Les indices des lignes (Rows) obtenues passent en bleu et je voudrais pouvoir lancer la macro (VB6.3): 
Activer une feuille qui a pour nom la valeur de la cellule A(x) ; (x) étant la valeur en colonne A de la première ligne filtrée.
Aucun problème si l'on sélectionne d'abord la cellule A(x) en question ... 
   Private Sub Extraire_Click()
   x = ActiveCell.Value
   Worksheets(Sheets(x).Name).Activate
   End Sub
Mais comment le faire SANS la sélectionner d'abord ?
Quelle syntaxe utiliser pour que la macro "aille chercher" la valeur en colonne A de la première ligne obtenu au filtrage ?
Ou encore, dans mon cas, la valeur en colonne A de la troisème ligne "affichée" et non pas  "row=3" ?

Mes recherches sur le forum étant restée vaines,
Merci pour toute aide !

 

2 réponses

cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
23 mai 2007 à 23:53
C'est quoi la macro VB6.3  ???

De toutes façons, tu peux regarder si la ligne est masquée (hidden)
Disons que tu as des entêtes sur la 1ere ligne et que tes données commencent sur la 2e
Ce code va filtrer la colonne A sur la valeur 4 et cherchera la 1ere ligne non masquée

    Dim I As Long, Ligne As Long
   
    Rows(1).AutoFilter Field:=1, Criteria1:="4"
   
    For I = 2 To Cells(Rows.Count, 1).End(xlUp).Row
        If Rows(I).Hidden = False Then  'donc la ligne est visible
            Ligne = I
            Exit For
        End If
    Next

MPi
3
CerberusPau Messages postés 377 Date d'inscription lundi 3 avril 2006 Statut Membre Dernière intervention 22 août 2018 1
24 mai 2007 à 22:31
Merci à toi MPI , tu me tires bien d'affaire : c'est tout bon !
Quant à "la macro (VB6.3)" , je voulais simplement préciser que je tournais sur le version 6.3 de Visual Basic.
Si je peux me permettre, je mets un nouveau topic " Renommer un feuille par la valeur d'une de ses cellules ? "...
Là aussi je cherche sur le forum et je n'ai pas encore trouvé ...
Je manque vraiment de pratique !
Merci encore
3
Rejoignez-nous