Copier /coller , entre deux fichiers
saadiil1
Messages postés
31
Statut
Membre
-
lermite222 Messages postés 9042 Statut Contributeur -
lermite222 Messages postés 9042 Statut Contributeur -
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
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
-
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).PasteA+
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. -
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 -
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 -
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. -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
non toujours pas !!!! ça va me renre fouuu cette macro hhh !!!!!
-
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. -
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 .
-
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 . -
Grrrr...
Regarde encore une fois mon poste #4