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 :

Parcourir un tableau et transférer certaines lignes de données. [XL-2019]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Mali

    Informations forums :
    Inscription : Octobre 2007
    Messages : 223
    Par défaut Parcourir un tableau et transférer certaines lignes de données.
    Bonjour à tous.
    J’ai besoin de votre aide pour solution en VBA.
    Je renseigne un tableau de 15 colonnes ( A : O ) sur la feuille « Sortie » à partir d’un UserForm.
    Je souhaite filtrer ce tableau en fonction de la colonne 11 ( K ) en choisissant le critère dans la Combobox1 et transférer le résultat sur la feuille « Etats »

    Autrement dit : Je souhaite parcourir la colonne K de mon tableau. Chaque fois que la valeur d’une cellule correspond au critère choisi dans la combobox1 , Copier toute la ligne pour mettre dans le second tableau sur la feuille « Etats », Faire cette opération jusqu’à la fin du tableau.

    Merci d’avance.

  2. #2
    Membre Expert
    Inscrit en
    Septembre 2007
    Messages
    1 142
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 142
    Par défaut
    Bonjour,

    Tu devrais regarder le filtre élaboré qui fait cela très bien, éventuellement avec une ligne VBA au changement de ta sélection.

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Mali

    Informations forums :
    Inscription : Octobre 2007
    Messages : 223
    Par défaut
    Bonjour anasecu et merci pour ta réponse.

    Je vais voir ce que je pourrai faire et je te reviendrai.
    Bonne journée.

  4. #4
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Mali

    Informations forums :
    Inscription : Octobre 2007
    Messages : 223
    Par défaut
    Bonjour à tous.

    Après plusieurs lectures sur les discussions entre la comparaison d'une boucle et d'un filtre élaboré, j'ai fini par choisir le filtre élaboré.
    Le filtre élaboré me convient, j'arrive à gérer étant donné qu'ici l'utilisateur n'a pas accès aux différentes feuilles. Les données sont affichées dans une listebox qui charge le résultat du filtre pour éviter une mauvaise surprise. Merci anasecu

    Voici le code :

    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
    25
    26
    27
    28
    Private Sub CboC_IdClient_Change()
     
    Dim RgSortie As Range
    Dim Critere
    Dim RgDestination As Range
    Dim DL 'La dernière ligne de mon tableau puisqu'elle est variable
     
    DL = Feuil7.Range("A100000").End(xlUp).Row 
     
    'Mon critère est selectionné dans la combobox1 de l'UserForm. _
    Il doit aussi être sur la feuille source des données pour que le filtre puisse se faire
     
     
    Feuil7.Range("P2") = Me.CboC_IdClient.Value 'Pour renseigner la plage critère
    Set Critere = Feuil7.Range("P1:P2") ' Affectation
     
    'Affectation des variables
    Set RgSortie = Feuil7.Range("A1:O" & DL)
    Set Critere = Feuil7.Range("P1:P2")
    Set RgDestination = Feuil8.Range("A1")
     
    'On efface l'ancienne exportation
    Feuil8.Cells.ClearContents
     
    'On lance l'outils FiltreAvancé
    RgSortie.AdvancedFilter xlFilterCopy, Critere, RgDestination
     
    End Sub

  5. #5
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  6. #6
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Mali

    Informations forums :
    Inscription : Octobre 2007
    Messages : 223
    Par défaut
    Citation Envoyé par Pierre Fauconnier Voir le message
    Salut.

    Power Query permet cela sans aucune ligne de code.
    Bonjour Pierre Fauconnier. Merci pour cette proposition. Je vais essayer aussi.

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 06/09/2012, 11h31
  2. Récupérer certaines lignes contenu dans un tableau
    Par alexbts dans le forum Langage
    Réponses: 14
    Dernier message: 27/01/2009, 17h03
  3. [Word2003]Bloquer certaine ligne d'un tableau
    Par Misha dans le forum Word
    Réponses: 5
    Dernier message: 19/08/2008, 11h59
  4. [MySQL] Affichage simple d'une certaine ligne d'un tableau
    Par linux_21 dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 30/06/2008, 08h19
  5. [VBA-W] mettre en gras certaines lignes d'un tableau
    Par perophron dans le forum VBA Word
    Réponses: 22
    Dernier message: 18/04/2007, 17h59

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