Copie avec derniere ligne

  • Initiateur de la discussion Initiateur de la discussion Aladin
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Aladin

XLDnaute Occasionnel
bonsoir le forum
J' ai par l' enregistreur de macro fait ceci Sub Import_1()
' Sheets("Import").Select
Range("A2😀86").Select
Selection.Copy
Sheets("Serveur").Select
Range("A31").Select
ActiveSheet.Paste

End Sub

Comment modifier ce code en lui disant de récuperer les infos en partant de A2 jusqu' a colonne D sans préciser la célulle mais jusqu' a ce qu' il trouve une ligne vide car le nbre de données peut varier.
Merci d' avance pour toute aide qui sera la bienvenue
Aladin
 
Re : Copie avec derniere ligne

Salut,

Tiens avec ceci ca devrait fonctionner :
Code:
Sub Import_1()
Range("A2:D" & Range("D65536").End(xlUp).Row).Copy
Application.Goto Sheets("Serveur").Range("A31")
ActiveSheet.Paste
End Sub

@+

Edition : Ce Robert, toujours la quand on ne s'y attends pas !!!! Comment ca va aujourd'hui ?
 
Dernière édition:
Re : Copie avec derniere ligne

Bonsoir porcinet82, Robert et le forum
JJ' ai testé la macro de Porcinet et ai rajoute Sheets("Import").Select
et ai rajouté la selection pour copie d' une autre colonne. lest test sont ok. c' est exactement ce que je voulais
merci à vous deux pour la rapidité de votre intervention
Bonne continuation
Aladin
 
Re : Copie avec derniere ligne

Rebonhour Robert, Porcinet et le forum
Robert le ode quivant que tu m' a donné permet éffectivement de faire une copie de données
Sub Import_1()
Range("A2😀" & Range("D65536").End(xlUp).Row).Copy
Application.Goto Sheets("Serveur").Range("A31")
ActiveSheet.Paste
End Sub
Ma question est la suivante:
XlDown permet de partir à partir du haut vers le bas, comment retravailler cette macro pour y inserer xlDown. J' ai bien éssayé mais j' ai un méssage d' érreur
Aladin
 
Re : Copie avec derniere ligne

Bonjour à tous

essaye peut être comme ceci :

Code:
Range("A2:D" & Range("D2").End(xlDown).Row).Copy

mais si tu as une ligne vide dans ta colonne D, les lignes qui suivent ne seront pas prises.

bonne journée
@+
 
Re : Copie avec derniere ligne

Bonsoir Pierrrot et le forum
J' ai adapté le code comme ceci et l' ai testé sur une copie de colonne
Application.ScreenUpdating = False
Sheets("Serveur").Select
Range("F32:F" & Range("F32").End(xlDown).Row).Copy
Application.Goto Sheets("Recap").Range("F2")
ActiveSheet.Paste
Sheets("Serveur").Select
Range("G32:G" & Range("G32").End(xlDown).Row).Copy
Application.Goto Sheets("Recap").Range("C2")
ActiveSheet.Paste
Range("A2").Select
Sheets("Serveur").Select
Range("A31").Select
Application.ScreenUpdating = True
et il fonctionne. Mais il peut être meilleur
Merci pour ton post Pierrot
Aladin
 
Re : Copie avec derniere ligne

Salut,

Je dirai sans avoir testé :
Code:
Sub test()
Application.ScreenUpdating = False
Sheets("Serveur").Select
With Sheets("Recap")
    Range("F32:F" & Range("F32").End(xlDown).Row).Copy Destination:=.Range("F2")
    Range("G32:G" & Range("G32").End(xlDown).Row).Copy Destination:=.Range("C2")
End With
Application.ScreenUpdating = True
End Sub

@+
 
Re : Copie avec derniere ligne

Bonjour à tous

Ou encore,
en s'arrêtant à la première ligne vide

Code:
Application.Goto Range("Serveur!A31")
With Sheets("Recap")
    Range("F32:F" & Range("F32").End(xlDown).Row).Copy Destination:=.Range("F2")
    Range("G32:G" & Range("G32").End(xlDown).Row).Copy Destination:=.Range("C2")
End With
(pas besoin de neutraliser le rafraîchissement de l'écran)

en s'arrêtant à la dernière ligne vide
Code:
With Sheets("Serveur")
 .Range("F32:F" & Range("F32").End(xlDown).Row).Copy Destination:=Sheets("Recap").Range("F2")
 .Range("G32:G" & Range("G32").End(xlDown).Row).Copy Destination:=Sheets("Recap").Range("C2")
End With
Application.Goto Range("Serveur!A31")
 
Dernière édition:
Re : Copie avec derniere ligne

re, Salut Excel_lent,

Effectivement, je n'ai pas pensé a enlever le Application.ScreenUpdating alors qu'il n'avait plus de raison d'etre.
Sinon, merci pour le Range("Serveur!A31") que je ne connaissais pas dans l'utilisation du Application.Goto

Au plaisir,

@+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
10
Affichages
791
G
Réponses
7
Affichages
1 K
gfgghbhg
G
L
Réponses
1
Affichages
1 K
L
T
Réponses
28
Affichages
4 K
S
Réponses
8
Affichages
2 K
S
Retour