Copier /coller , entre deux fichiers

Bonjour tout le monde ;
Je suis entrains de faire une macro qui permet de copier coller entre 2 fichier excel et je suis bloqué .

En fait je veux copier toutes la lignes contenant l'année (col B ) qu'on va saisir de la feuil2 de fichier "Macro-somme-des-cdes.xls" vers la feuil1 de fichier ""20110314 Ind0146bis_Carnet_Commande(1).xls" en sautant 2 lignes à chaque fois
voici ce que j ' ai mis comme code :

Sub saisie()
Dim Lig As Long
Dim myVar As Integer
Dim NbrLig As Long
Dim col As String

Message = "Entrer l'année :"
myVar = InputBox(Message)
col = "B"
NumLig = 0

Workbooks("Macro-somme-des-cdes.xls").Activate
NbrLig = Sheets("Feuil2").Cells(65536, col).End(xlUp).Row

For Lig = 1 To NbrLig

If Sheets("Feuil2").Cells(Lig, col).Value = myVar Then
Sheets("Feuil2").Cells(Lig, col).EntireRow.Copy
NumLig = NumLig + 2
Workbooks("20110314 Ind0146bis_Carnet_Commande(1).xls").Activate
Sheets("Feuil1").Select
Sheets("Feuil1").Range("A" & NumLig).Paste

End If
Next Lig
End Sub

il me signale une erreur à la ligne " Sheets("Feuil1").Range("A" & NumLig).Paste" mais je ne sais pas exactement ce que c'est comme erreur .

NB : les deux fichier sint ouverts
Merci de votre aide c'est urg

Cordialement

9 réponses

  1. Contributeur
    Bonjour,
    Tu copie une ligne entière et tu veux copier dans une cellule ! ç'est impossible
    Si tu copie une ligne faut remettre une ligne.
    Modifier..

        Sheets("Feuil2").Rows(lig).Copy 
    '.... 
        Sheets("Feuil1").Rows(NumLig).Paste
    A+
    Toute la connaissance du monde ne peu tenir dans une seul tête (moi)
    Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
    NOTE : Je ne répond pas aux MP pour les questions techniques.
    0
    1. Bonjour ,
      merci pour ta réponse ,
      merci de noter que je suis debutant en VBA .J 'ai essayer avec ça mais malheureusement ça ne marche encore pas

      Cordialement
      0
      1. il me met comme erreur "proprieté ou methode non gérée par cet objet " !!! pour la ligne du code "Sheets("Feuil1").Rows(NumLig).Paste" !!

        merci
        0
        1. Contributeur
          Oui, Excel est parfois "bizarre"
          Supprime la partie..
          If Sheets("Feuil2").Cells(Lig, col).Value = myVar Then 
              Sheets("Feuil2").Cells(Lig, col).EntireRow.Copy 
              Numlig = Numlig + 2 
              Workbooks("20110314 Ind0146bis_Carnet_Commande(1).xls").Activate 
              Sheets("Feuil1").Select 
              Sheets("Feuil1").Range("A" & Numlig).Paste 
          End If 
          

          et essaye avec ..
              If Sheets("Feuil2").Cells(Lig, col).Value = myVar Then 
                  Numlig = Numlig + 2 
                  Sheets("Feuil2").Rows(Lig).Copy Workbooks("20110314 Ind0146bis_Carnet_Commande(1).xls").Sheets("Feuil1").Rows(Numlig) 
              End If


          En principe ça devrait fonctionner.
          Toute la connaissance du monde ne peu tenir dans une seul tête (moi)
          Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
          NOTE : Je ne répond pas aux MP pour les questions techniques.
          0
          1. non toujours pas !!!! ça va me renre fouuu cette macro hhh !!!!!
            0
            1. Contributeur
              Quel est le nom du module où se trouve ta macro ?
              J'ai tester mon dernier exemple sur 2 classeurs et ça fonctionne.
              Donc l'erreur est ailleurs.
              Toute la connaissance du monde ne peu tenir dans une seul tête (moi)
              Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
              NOTE : Je ne répond pas aux MP pour les questions techniques.
              0
              1. le module2 , en fait dans le fichier "20110314 Ind0146bis_Carnet_Commande(1).xls)." j'ai creé deux macro "sybthèse" sur le module1 et saisie( celle là ) sur le module2 . mais quand j 'execute j'excute la macro saisie .
                0
                1. Contributeur
                  Quand tu a une erreur et que tu souhaite de l'aide...
                  DONNE LE N° DE L'ERREUR ET LE LIBELLE !!!
                  Et SUR QUEL LIGNE
                  Et surtout, pas s'énerver :-)
                  0
              2. Ereur d'excution "438" ' proprieté ou methode non gérée par cet objet'

                et ça bugue toujours sur la ligne "Workbooks("20110314 Ind0146bis_Carnet_Commande(1).xls").Sheets("Feuil1").Rows(Numlig).Paste"
                En fait la macro copier la ligne demandée mais elle la colle pas dans l'endroit voulu .
                0
                1. Contributeur
                  Grrrr...
                  Regarde encore une fois mon poste #4
                  0