A voir également:
- Probleme pr copier coller en VBA
- Copier coller pdf - Guide
- Copier une vidéo youtube - Guide
- Super copier - Télécharger - Gestion de fichiers
- Copier coller formule excel sans décalage ✓ - Forum Bureautique
- Copier coller multiple - Guide
5 réponses
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 avril 2024
7 214
17 juil. 2008 à 11:56
17 juil. 2008 à 11:56
Bonjour,
déjà peut-être Paste:=xlPasteValues...
mais surtout tu cherches à coller une ligne entière (256 colonnes sur excel 2003) en te positionnant en colonne 6, forcément ça rentre pas...
Donc soit colle en colonne A, soit réduit ton copier à ce qui est nécessaire (avec .End(xlToLeft) par exemple)
et tu peux écrire directement :
Dim MaLigne as long
MaLigne = Range("C65536").End(xlUp).Row
eric
déjà peut-être Paste:=xlPasteValues...
mais surtout tu cherches à coller une ligne entière (256 colonnes sur excel 2003) en te positionnant en colonne 6, forcément ça rentre pas...
Donc soit colle en colonne A, soit réduit ton copier à ce qui est nécessaire (avec .End(xlToLeft) par exemple)
et tu peux écrire directement :
Dim MaLigne as long
MaLigne = Range("C65536").End(xlUp).Row
eric
lermite222
Messages postés
8702
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 190
17 juil. 2008 à 12:38
17 juil. 2008 à 12:38
Bonjour,
Pour copier pas besoin de faire les sélection...
NbColo = 10
Range(Cells(Maligne, 1), Cells(i, NbColo)).Copy _
Destination:=Sheets("Sommaire").Cells(i, 6)
Plus moyen de mettre les balises code ???? ni les autres d'ailleurs ????
A+
Pour copier pas besoin de faire les sélection...
NbColo = 10
Range(Cells(Maligne, 1), Cells(i, NbColo)).Copy _
Destination:=Sheets("Sommaire").Cells(i, 6)
Plus moyen de mettre les balises code ???? ni les autres d'ailleurs ????
A+
Merci pour vos réponses.
JE suis tres interressée par ta réponse eric mais je n'ai pas bien saisi comment utilisé le ".End(xlToLeft)" car je ne peux pas copier en A car j'ai déja une autre macro qui le fait....
Faut il que je le mette lorsque je selectionne ma ligne u lorsque je la copie???
Désolé ca fait maintenant 3 jours que je me suis mise à VBA....
Merci d'avance.
JE suis tres interressée par ta réponse eric mais je n'ai pas bien saisi comment utilisé le ".End(xlToLeft)" car je ne peux pas copier en A car j'ai déja une autre macro qui le fait....
Faut il que je le mette lorsque je selectionne ma ligne u lorsque je la copie???
Désolé ca fait maintenant 3 jours que je me suis mise à VBA....
Merci d'avance.
lermite222
Messages postés
8702
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 190
17 juil. 2008 à 14:05
17 juil. 2008 à 14:05
XlToLeft c'est si tu veux la dernière colonne de la feuille
XlUp c'est pour trouver la dernière ligne de la feuille.
XlUp c'est pour trouver la dernière ligne de la feuille.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 avril 2024
7 214
17 juil. 2008 à 15:17
17 juil. 2008 à 15:17
tu as la ligne qui t'interesse dans Maligne,
pour copier de la colonne A à la dernière colonne de cette ligne tu fais :
Range(Cells(maligne, 1), Cells(maligne, 256).End(xlToLeft)).Copy
Cells(maligne, 1) : de la colonne A
Cells(maligne, 256).End(xlToLeft) : tu pars de la dernière cellule de ta ligne (colonne 256 donc) et tu lui dis d'aller sur la 1ère cellule remplie en allant vers la gauche (ça sera donc la dernière de ta ligne).
eric
pour copier de la colonne A à la dernière colonne de cette ligne tu fais :
Range(Cells(maligne, 1), Cells(maligne, 256).End(xlToLeft)).Copy
Cells(maligne, 1) : de la colonne A
Cells(maligne, 256).End(xlToLeft) : tu pars de la dernière cellule de ta ligne (colonne 256 donc) et tu lui dis d'aller sur la 1ère cellule remplie en allant vers la gauche (ça sera donc la dernière de ta ligne).
eric