Vba excel copier lignes avec condition

Résolu
lulu37 Messages postés 80 Statut Membre -  
 Gpierron -
Bonjour,
J'ai beau chercher, je ne trouve pas ...
J'ai 2 feuilles dans 1 classeur
Je souhaite copier chaque ligne de la feuille 1 qui contient une valeur dans la colonne C, vers la feuille 2
J'ai bien pensé aux filtres..., mais je préfererai un code qui permette de prendre en compte toutes les lignes meme si j'ai des filtres actifs sur la feuille
Configuration: excel97 vba6 sous windows


Avez vous la solution?

5 réponses

  1. Armojax Messages postés 1863 Date d'inscription   Statut Membre Dernière intervention   1 529
     
    Re, ludivine,

    Une petite macro...
    Sub FiltreLulu()
    
      Dim Lig     As Long
      Dim Col     As String
      Dim NbrLig  As Long
      Dim NumLig  As Long
      
      Sheets("Feuil2").Activate ' feuille de destination
      
      Col = "C"                 ' colonne de la donnée non vide à tester
      NumLig = 0
      With Sheets("Feuil1")     ' feuille source
      NbrLig = .Cells(65536, Col).End(xlUp).Row
      For Lig = 1 To NbrLig
        If .Cells(Lig, Col).Value <> "" Then
          .Cells(Lig, Col).EntireRow.Copy
          NumLig = NumLig + 1
          Cells(NumLig, 1).Select
          ActiveSheet.Paste
        End If
      Next
      End With
        
    End Sub
    25
    1. lulu37 Messages postés 80 Statut Membre 13
       
      Coucou

      Ca échoue en fin de procédure :
      Cells(NumLig, 1).Select
      erreur exe 1004
      Ca n'a apparemment rien à voir avec mes lignes d entete, j'ai testé sans (au cas où...j'ai 2 lignes d'entete sur chaque feuille)
      0
    2. Gpierron
       
      Merci mille fois !
      0