IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Discussion :

Filtre automatique: descendre à la première ligne visible


Sujet :

VBA

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2013
    Messages : 74
    Points : 59
    Points
    59
    Par défaut Filtre automatique: descendre à la première ligne visible
    Bonjour
    j'ai developpé une macro avec une seule procédure dans lequel se trouve un bout de code qui marcha jusqu'à ce jour.
    Ce code à pour but de selectionner la première ligne visible d'un tableau.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Sub af()
                                Worksheets("Sheet2").Range("$A$1:$G$100").AutoFilter Field:=4, Criteria1:=4 _
                                   , Operator:=xlAnd
                                  Range("E2", Cells(Rows.Count, "E").End(xlUp)).SpecialCells(xlCellTypeVisible).Cells(1, 1).Select
    End Sub
    Après avoir appliqué des nouvelles procédure, lors de mes tests, la cellule reste sur la ligne des titres .
    Je m 'attend à ce qu'elle descende à la première ligne visible du tableau (titre exclus) comme ce fut le case il y a peu de temps encore .

    Apres avoir essayer ce code sur une nouvelle sheet, il fonctionne bien :-s

    Quelqu'un aurais t il une idée?

    Merci pour votre aide
    jerome

  2. #2
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 677
    Points
    18 677
    Par défaut

    Bonjour, bonjour !

    Ce n'est pas du général VBA, la prochaine fois poste dans le bon forum, celui dédié au VBA d'Excel !

    Sinon faut pas chercher bien loin : c'est juste une mauvaise conception de la ligne n°5 ne fonctionnant qu'avec la feuille active,
    à comparer avec la ligne n°3 faisant référence elle à une feuille de calculs précise !

    _____________________________________________________________________________________________________

    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion …

    _____________________________________________________________________________________________________
    Je suis Charlie, Bardo, Sousse
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2013
    Messages : 74
    Points : 59
    Points
    59
    Par défaut
    Bonjour

    Mince désolé, j'ai pas fait attention que j'étais pas sur le bon forum :-(
    Du coup je clos ce dernier et j'en recréais un dans VBA Excel.

    J'avais déjà tester ta remarque et ca ne marche pas quand même.

    C'est fou, alors que si je mets ce bout de code sur une feuille landa avec un petit tableau et que je filtre ca marche!!

    Merci quand meme pour ton aide

    Du coup je pense que je vais appelé cette procédure

    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
    Public Sub NextRowMatch()
     'Descendre à la deuxième ligne visible suivante de la feuille Match si un match est présent.
     
                              Set ACellM = ActiveCell
                              ACellMRow = ActiveCell.Row
                              Do
                               'Je verrifie qu'il y est un match à la ligne suivante, si vrai alors
                                  If Range("K" & ACellMRow + 1).Value <> 0 Then
                                  'Je descend d'une ligne
                                  Set ACellM = ACellM.Offset(1, 0)
                                  Else
                                  'si faux(pas de match) je sors de la boucle
                                  Exit Sub
                                  End If
                                  'je verifie que sur la nouvelle ligne ou se trouve le match elle n'est pas filtré, si filtré je repars au Do
                            Loop Until ACellM.EntireRow.Hidden = False
                              'Loop Until IsEmpty(ACellM.Value)
                              ACellM.Select
                              If ACellM.Row < 101 Then
                            Call AddValueForecast
                            Else
                            Exit Sub
                            End If
    End Sub

    jerome

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2010] Filte automatique: Descendre à la ligne visible suivante si valeur présente
    Par jbonneval dans le forum Macros et VBA Excel
    Réponses: 18
    Dernier message: 26/06/2015, 09h49
  2. Récupérer première ligne visible d'un tri
    Par etnies13 dans le forum VBScript
    Réponses: 1
    Dernier message: 13/07/2014, 17h36
  3. Selection automatique de la première ligne d'un DBGrid
    Par Rserge dans le forum Composants VCL
    Réponses: 3
    Dernier message: 08/08/2009, 10h05
  4. Comment descendre d'une ligne dans un champ avec filtre automatique
    Par frolland46 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 30/06/2008, 20h15
  5. Filtre automatique en gardant certaines lignes
    Par SybVicious dans le forum Excel
    Réponses: 4
    Dernier message: 14/02/2008, 17h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo