Passer des lignes d'un classeur a un autre
Fermé
van_van
Messages postés
60
Date d'inscription
mercredi 6 avril 2016
Statut
Membre
Dernière intervention
9 janvier 2017
-
14 avril 2016 à 09:02
van_van Messages postés 60 Date d'inscription mercredi 6 avril 2016 Statut Membre Dernière intervention 9 janvier 2017 - 14 avril 2016 à 16:28
van_van Messages postés 60 Date d'inscription mercredi 6 avril 2016 Statut Membre Dernière intervention 9 janvier 2017 - 14 avril 2016 à 16:28
A voir également:
- Passer des lignes d'un classeur a un autre
- Passer de windows 7 à windows 10 - Guide
- Passer de qwerty a azerty - Guide
- Mettre un mot de passe sur un dossier - Guide
- Passer à la ligne excel - Guide
- Passer un texte en majuscule - Guide
2 réponses
ThauTheme
Messages postés
1442
Date d'inscription
mardi 21 octobre 2014
Statut
Membre
Dernière intervention
29 juillet 2022
160
14 avril 2016 à 09:56
14 avril 2016 à 09:56
Bonjour Van_van, bonjour le forum,
Tu donnes si peu d'explications que le code que je te propose doit être complètement adapté à ton cas. Pour qu'il fonctionne il faut le placer dans le classeur source (celui qui contient les lignes). Ensuite, il faut que le classeur destination soit ouvert. Et pour terminer il te faut adapter toutes les variables : OS, CD, OD et éventuellement PL si ton tableau ne commence pas dans la cellule A1...
le Code :
Un conseil, la prochaine fois quand tu demandes de l'aide essaie d'être le plus précis possible si tu veux mettre le maximum de chance d'obtenir une réponse rapidement...
Tu donnes si peu d'explications que le code que je te propose doit être complètement adapté à ton cas. Pour qu'il fonctionne il faut le placer dans le classeur source (celui qui contient les lignes). Ensuite, il faut que le classeur destination soit ouvert. Et pour terminer il te faut adapter toutes les variables : OS, CD, OD et éventuellement PL si ton tableau ne commence pas dans la cellule A1...
le Code :
Sub Macro1() Dim CS As Workbook 'déclare la variable CS (Classeur Source) Dim OS As Worksheet 'déclare la variable OS (Onglet Source) Dim CD As Workbook 'déclare la variable CS (Classeur Destination) Dim OD As Worksheet 'déclare la variable OS (Onglet Destination) Dim PL As Range 'déclare la variable PL (PLage) Dim DEST As Range 'déclare la variable DEST (cellule de DESTination) Set CS = ThisWorkbook 'définit le classeur source CS Set OS = CD.Sheets("Feuil1") 'définit l'onglet source OS Set CD = Workbooks("Classeur Destination.xlsx") 'définit le classeur destination CD Set OD = CD.Sheets("Feuil1") 'définit l'onglet destination OD Set PL = OS.Range("A1").CurrentRegion 'définit la plage PL Set PL = PL.Offset(1, 0).Resize(PL.Rows.Count - 1, PL.Columns.Count) 'redéfinit la plage PL (sans la première ligne) Set DEST = OD.Cells(Application.Rows.Count).End(xlUp).Offset(1, 0) 'définit la cellule de destination PL.Copy DEST 'copie la palge PL dans DEST End Sub
Un conseil, la prochaine fois quand tu demandes de l'aide essaie d'être le plus précis possible si tu veux mettre le maximum de chance d'obtenir une réponse rapidement...
ThauTheme
Messages postés
1442
Date d'inscription
mardi 21 octobre 2014
Statut
Membre
Dernière intervention
29 juillet 2022
160
14 avril 2016 à 14:35
14 avril 2016 à 14:35
Re,
J'ai rectifié deux erreurs du premier code proposé.
Comme tu manques toujours de précision, pour que le nouveau code fonctionne il faut que :
- Les donnés commencent en A1
- le classeur CLASSEUR_VERSEMENTS_DEPLACES_MOIS ait une extension .xlsx (sinon il faut modifier le code)
- le classeur CLASSEUR_VERSEMENTS_DEPLACES_MOIS.xlsx soit ouvert
Le code :
J'ai rectifié deux erreurs du premier code proposé.
Comme tu manques toujours de précision, pour que le nouveau code fonctionne il faut que :
- Les donnés commencent en A1
- le classeur CLASSEUR_VERSEMENTS_DEPLACES_MOIS ait une extension .xlsx (sinon il faut modifier le code)
- le classeur CLASSEUR_VERSEMENTS_DEPLACES_MOIS.xlsx soit ouvert
Le code :
Sub Macro1() Dim CS As Workbook 'déclare la variable CS (Classeur Source) Dim OS As Worksheet 'déclare la variable OS (Onglet Source) Dim CD As Workbook 'déclare la variable CS (Classeur Destination) Dim OD As Worksheet 'déclare la variable OS (Onglet Destination) Dim PL As Range 'déclare la variable PL (PLage) Dim DEST As Range 'déclare la variable DEST (cellule de DESTination) Set CS = ThisWorkbook 'définit le classeur source CS Set OS = CS.Sheets("VERSEMENTS_DEPLACES") 'définit l'onglet source OS Set CD = Workbooks("CLASSEUR_VERSEMENTS_DEPLACES_MOIS.xlsx") 'définit le classeur destination CD Set OD = CD.Sheets("Feuil1") 'définit l'onglet destination OD Set PL = OS.Range("A1").CurrentRegion 'définit la plage PL Set PL = PL.Offset(1, 0).Resize(PL.Rows.Count - 1, PL.Columns.Count) 'redéfinit la plage PL (sans la première ligne) Set DEST = OD.Cells(Application.Rows.Count, 1).End(xlUp).Offset(1, 0) 'définit la cellule de destination PL.Copy DEST 'copie la palge PL dans DEST End Sub
van_van
Messages postés
60
Date d'inscription
mercredi 6 avril 2016
Statut
Membre
Dernière intervention
9 janvier 2017
14 avril 2016 à 16:28
14 avril 2016 à 16:28
J E M EXCUSE POUR MON MANQUE DE PRECISION, MAIS CELA N A PAS EMPECHER QUE VOTRE PROGRAMME FONCTIONNE A MERVEILLE. JE VOUS DIT MERCI !!!!!!!
14 avril 2016 à 11:48
14 avril 2016 à 11:56
"Set OD = CD.Sheets("Feuil1") 'définit l'onglet destination OD" ici je n'ai pas mis Feuil1 mais versements déplacés car les lignes a transferer sont dans cet onglet la
14 avril 2016 à 14:00
Plus de précision ne voulais pas dire la marque du café à la machine à café ou l'âge de la secrétaire mais :
- Chemin d'accès du Classeur Destination
- Nom du Classeur Destination
- Nom de l'Onglet Destination
- Nom de l'Onglet Source
- Adresse de la plage
- Adresse de cellule de la première copie
- ect...
Avec en plus ton fichier ZIPPÉ en pièce jointe, tu mettrais toutes les chance d'obtenir rapidement une réponse, de ton coté...
14 avril 2016 à 14:04
Alors le Classeur qui contient les données a transferer s'apelle CLASSEUR_VERSEMENTS_DEPLACES , et l'onglet est VERSEMENTS_DEPLACES
et le classeur qui va recevoir les données s'appelle CLASSEUR_VERSEMENTS_DEPLACES_MOIS, sur onglet "Feuil1"