Excel VBA : Copie Plage variable filtrée

Résolu
Bonjour,

Je cherche à résoudre le problème suivant depuis hier sans succès :
J'ai un fichier Excel qui contient plusieurs centaines de lignes, les opérations sont les suivantes :
- Réalisation d'un filtrage sur la colonne K,
- Copier des lignes restantes après ce filtrage dans l'onglet 1 d'un nouveau fichier.

Mon problème vient du fait que la plage a copier est variable et change chaque jour et que lorsque je tente un copier / coller, j'ai aussi les lignes qui sont normalement filtrées qui sont transférées sur le nouveau fichier.
Ce que je ne souhaites absolument pas :)

Quelqu'un aurait une idée svp ?

3 réponses

  1. Modérateur
    Bonjour,
    La syntaxe pour ne copier que les lignes visibles est la suivante :

    Sheets(NomDeLaFeuille).Range("A2:AZ16500").SpecialCells(xlVisible).Copy

    En gras : à adapter

    par exemple :

    Range("A2:AZ16500") 
    peux devenir "variable" comme ceci :

    Range("A2:AZ" & Range("A65536").End(xlUp).Row)

    Cordialement,
    -- Il n'y a rien de tel qu'une question idiote, seulement une réponse idiote. A.Einstein --
    4
    1. merci pour tes bons conseils. c'est vraiment sympa!
      0
  2. Super, j'integre ça :)
    Merci !! :)
    1
    1. Donc ça fonctionne parfaitement. Et si dans la foulée je souhaite détruire les lignes que je viens de copier depuis le fichier de départ (et dans ce fichier de départ) ?

      Édit : c'est bon, je fais en 2 fois et tout fonctionne parfaitement.
      Encore merci pour le coup de main
      1