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 :

Copier les lignes contenant une valeur de cellule


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Copier les lignes contenant une valeur de cellule
    Bonsoir à tous,

    Voilà quelques années, j'avais utilisé un code qui correspondait à ma demande : il reprenait les infos d'une cellule qu'il copiait dans la page correspondante (je vous l'adresse plus bas via le fichier).

    Maintenant, souhaitant le modifier pour diverses raisons (mes nièces et leur jeu), je n'y arrive pas, c'est pour cette raison que j'en appelle à vos savoirs.

    Explications :
    - Feuille "Listing_tous" regroupe toutes les données
    - Feuille "Nord" lorsque la feuille est active, reprend toutes les lignes avec "Nord" de la colonne F de la feuille "Listing_tous"
    - Feuille "Sud" lorsque la feuille est active, reprend toutes les lignes avec "Sud" de la colonne F de la feuille "Listing_tous"
    - Les autres feuilles sont aussi effacées à partir de la ligne 2

    Ce que j'aimerai :
    - Feuille "Listing_tous" regroupe toutes les données => OK
    - Feuille "Poissons_nord", lorsque la feuille est active, reprenne toutes les lignes avec "Nord" de la colonne F de la feuille "Listing_tous"
    - Feuille "Poissons_sud", lorsque la feuille est active, reprenne toutes les lignes avec "Sud" de la colonne F de la feuille "Listing_tous"
    Pour les 2 derniers points ci-dessus, sans que je sois dans l'obligation dans la feuille principale (Listing_tous), de mettre en colonne F "Poissons_nord" et "Poissons_sud"
    - Les autres feuilles ne soient pas effacées

    Je suis vraiment bloqué depuis dimanche dessus...

    Je pense savoir une (infime) partie de l'iceberg :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    If ActiveSheet.Name <> "Listing_tous" Then

    qui prend toutes les feuilles sauf celle-ci (oui j'avoue ne pas savoir comment mettre d'autres conditions à cet endroit)

    Mais pour le reste, j'ai vraiment du mal...

    J'espère avoir été clair...

    Je vous remercie par avance de votre aide,

    Bonne soirée,

  2. #2
    Membre expert
    Bonjour,

    Si j'ai bien compris, remplacez la ligne
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    If ActiveSheet.Name <> "Listing_tous" Then


    par
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    If ActiveSheet.Name <> "Listing_tous" And ActiveSheet.Name <> "Poissons_nord" And ActiveSheet.Name <> "Poissons_sud" Then


    ou par
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    If ActiveSheet.Name = "Nord" Or ActiveSheet.Name = "Sud" Then



    Cdlt

  3. #3
    Expert éminent sénior
    Citation Envoyé par FuraX92 Voir le message

    Bonjour,

    Basé sur un filtre avancé plutôt que sur une boucle, donc plus rapide. A tester, pas sûr du fonctionnement sur Mac.
    Eric KERGRESSE
    https://sites.google.com/site/erickergresseeirl/
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter

  4. #4
    Expert éminent
    Bonjour Furax et bienvenu Forum,

    Bonjour Eric et Arturo,

    Furax,

    Pour un présentation "classique"
    Tu peux t'inspirer de cette modeste contribution

    Pour une présentation en tableau structuré.
    Le code de Pierre peut être adapté.

    Bien Cordialement.

    Marcel

    Envoi d'un bloc de messageries Outlook utilisant des paramètres variables


    Pas de messagerie personnelle pour vos questions, s'il vous plaît. La réponse peut servir aux autres membres. Merci.



  5. #5
    Futur Membre du Club
    Bonjour Arturo, Eric et Marcel,

    Merci à vous pour vous être penchés sur mon souci.

    @Arturo,
    Oui en effet, c'était ce qu'il me fallait avec
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    If ActiveSheet.Name <> "Listing_tous" And ActiveSheet.Name <> "Poissons_nord" And ActiveSheet.Name <> "Poissons_sud" Then


    @Eric,
    Merci bien ! En effet c'est bien plus rapide sans la boucle et c'est fonctionnel sur Mac (même si d'habitude je suis sur W10).
    Je n'ai plus qu'à continuer pour les autres feuilles à venir :-)

    @Marcel,
    Je crois, sans être sûr, que le premier lien renvoie sur les forums généraux Excel...
    Et merci pour le post de Pierre ! Il est intéressant

    Je tiens encore une fois à vous remercier, et il ne me reste plus qu'à reprendre le VBA...

    Bonne journée à vous :-)

  6. #6
    Expert éminent
    Salut,

    Au temps pour moi.

    Voir ce lien

    Bien Cordialement.

    Marcel

    Envoi d'un bloc de messageries Outlook utilisant des paramètres variables


    Pas de messagerie personnelle pour vos questions, s'il vous plaît. La réponse peut servir aux autres membres. Merci.