Excel 2007 VBA : Pb copier/coller

Résolu
Bonjour,

J'ai un problème avec le copier / coller suivant :
J'effectue un filtre sur ma ligne de titre située en ligne 1 et je souhaite copier le résultat dans une autre feuille, à la suite d'une plage de données déjà existante :

J'ai donc codé ce qui suit :

Range("A2:S" & Range("A65536").End(xlUp).Row).SpecialCells(xlVisible).Copy
' Collage de la plage precedement copié sur "feuille2"
Sheets("feuille2").Activate
Range("A65536").End(xlUp).Offset(1, 0).Select
ActiveSheet.Paste


Mon soucis est que lors de mes essais, ma plage a copier (après filtrage) est vide (c'est normal) mais ce script me copie ma ligne de titre quand même et l'insère sur ma feuille 2... ce qui ne me va pas du tout :(

L'un de vous verrait il mon erreur svp ?
Merci d'avance :)

3 réponses

  1. Oui, c'est impecc ! Décidément je suis à la ramasse aujourd'hui. :)
    Je note ce sujet comme résolu.

    Merci a toi Pijaku !!!
    Si tu as 2 mn de plus à m'accorder, j'ai ouvert un autre sujet sur mon problème principal les manipulations de dates en VB (ça me prend la tète assez bien la :) )
    1. Merci Pijaku, effectivement, je n'avais pas percuté que si ma plage prévue était vide, je copiais la seule ligne "remplie".

      Saurais tu comment verrouiller ça proprement stp ?
      1. Modérateur
        Tu peux tester d'abord si ta dernière ligne remplie c'est la 1ère alors on ne fait rien sinon on copie :
        If Range("A65536").End(xlUp).Row <> 1 Then 
        Range("A2:S" & Range("A65536").End(xlUp).Row).SpecialCells(xlVisible).Copy  
        ' Collage de la plage precedement copié sur "feuille2"  
        Sheets("feuille2").Activate  
        Range("A65536").End(xlUp).Offset(1, 0).Select  
        ActiveSheet.Paste  
        End If
    2. Modérateur
      Salut,
      Ton erreur vient de là :
      Range("A2:S" & Range("A65536").End(xlUp).Row).SpecialCells(xlVisible).Copy
      Si Range("A65536").End(xlUp).Row = 1 Alors tu copies A2:S1, soit ta première ligne...