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

Macros et VBA Excel Discussion :

Sélectionner données avec autofiltre


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 855
    Par défaut
    Bonjour,

    (Ci joint un petit exemple pour mieux voir mon problème)

    Voilà,
    J'ai 2 feuilles, dans la feuille 2, j'ai toutes mes données. Je crée un filtre. , Mais je n'arrive pas à le mettre dans la feuille 1.

    Je m'explique, je souhaite que sur la feuille 1, apparaisse les champs des filtres, je sélectionne les filtres qu'il me faut, et les données "doivent" apparaitre, un peu comme sur la feuille 3 en prenant l'exemple des couleurs.

    Une idée ?

    Merci
    A+

    Je précise :

    Pour l'instant, je vais sur ma feuille 2, je fais le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Selection.AutoFilter Field:=3, Criteria1:="vert"
    Cells.select
    Selection.Copy
    Sheets("Feuille 1"").select
    Cells.Select
    ActiveSheet.Paste
    :
    Je fais mes filtres automatiques sur la feuille 2 (ici exemple couleur), je copie et je colle sur la Feuille 1. ça fonctionne, je peux créer différents filtres, mais je souhaite afficher mes filtres dans la feuille 1, directement et que les résultats s'affichent en dessous....

    Merci,
    A+
    Fichiers attachés Fichiers attachés

  2. #2
    Membre confirmé
    Inscrit en
    Août 2009
    Messages
    89
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 89
    Par défaut
    Salut,

    J'ai pas compris ce passage :
    ...un peu comme sur la feuille 3 en prenant l'exemple des couleurs.
    La feuille 3 c'est pour quoi faire ?

    Sinon pour juste afficher les résultat dans la feuille 1, on peut faire ça sans VBA non ?

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 855
    Par défaut
    Merci Mondev,

    Je viens de voir que j'ai rien mis dans la feuille 3.....c'était juste un filtre sur la couleur "vert", et donc les données concernées...
    J'ai essayé sans code VBA (=liste déroulante de choix, définir nom, etc....), mais le problème, c'est que je n'ai pas les résultats des données ensuite, c'est pourquoi je suis passé en code VBA.

    A+

  4. #4
    Membre confirmé
    Inscrit en
    Août 2009
    Messages
    89
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 89
    Par défaut
    Oui listes déroulantes dans les cellules, ensuite on peut récupérer les données en utilisant la fonction RechercheV

    Edit :

    Je crois que j'ai compris, en fait tu sais pas combien de données (résultats) il peut y avoir. Est ce que c'est ça ?

    Mais les données que tu veux récupérer correspondent à quoi ? de quelle colonne ?

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 855
    Par défaut
    Merci mondev,

    En fait, il y a à peu près 5000 données, 40 colonnes (j'ai volontairement simplifié mon exemple). Avec 'autofilter', je peux filtrer l'ensemble des données, mais je dois présenter mon projet à des néophites (dont je fais parti), et donc, je dois pouvoir mettre dans la feuille 1, les critères de filtre, et les résultats doivent apparaitre dans la feuille 1. Si mes collègues connaissaient un peu plus Excel, je pourrais utiliser simplement les autoofiltres de la feuille 2, mais autant "simplifier" les choses.....
    Pour la fonction "rechercheV", j'y avais pensé, mais je sais que le format (majuscule/minuscule, espace, orthographe,....) ne sera pas respecté, c'est pourquoi je suis parti sur la fonction filtre.

    A+

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 121
    Par défaut
    Bonsoir,

    Si cela peut t'aider voici le code que j'utilise pour copier le résultat d'un filtre sur une feuille dans une autre.
    A toi d'adapter
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub CopiePlageFiltreVisible()
    Dim Destination As Range
    Set Destination = Sheets(2).Range("A2")
     
    Dim PlageVisible As Range
    Selection.CurrentRegion.Select
    Selection.Offset(1, 0).Resize(Selection.Rows.Count - 1).Select
     
    Set PlageVisible = Selection.SpecialCells(xlVisible)
    PlageVisible.Copy Destination
     
    End Sub

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

Discussions similaires

  1. meilleure base de données avec java
    Par mial dans le forum JDBC
    Réponses: 11
    Dernier message: 10/11/2010, 11h49
  2. Réponses: 2
    Dernier message: 14/05/2004, 14h32
  3. Modifier le nom d'une base de donnée avec erreur sy
    Par mmn dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 25/11/2003, 10h12
  4. PB : affichage de données avec accent sous delphi 6
    Par kinda dans le forum Débuter
    Réponses: 3
    Dernier message: 03/07/2003, 13h19
  5. Réponses: 13
    Dernier message: 20/03/2003, 08h11

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