Transfert entre deux feuille de deux classeur

  • Initiateur de la discussion Initiateur de la discussion Ced29
  • 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 !

C

Ced29

Guest
Bonjour cher Forum,

J'ai xherxhé dans les 24 dernière page de discusion et rien n'a pu répondre à cette question.

Pourriez vous m'aidez?
De plus, aurais-je pu chercher autrement et plus efficasement?

Très simple:

Deux fichier: Départ, et terminus
Deux feuil: feuil1Depart et feuil1terminus

Ligne un identique
Plage A2: P2000 de donnée possible

J'aimerais simplement copier toute l'information de départ sur terminus
À LA SUITE DES DONNÉES SI DONNÉE IL Y A.
Alors si des données sont déja enregistré dans terminus, j'aimerais que le tout soit copier sur la ligne suivant.

Merci et encore une fois bravo pour ce forum.
Je lis et ce pour le plaisir les échange que certain intervenant : Excel-lent, JP14, Roger2237, patrinec et tant d'autre....vous est beau avoir aller et expliquer et surtout partager votre art...WoW

Bon matin
 

Pièces jointes

Re : Transfert entre deux feuille de deux classeur

Bonjour Ced, bonjour le forum,

Si les deux classeur sont ouverts, la macro ci-dessous devrait te convenir :
Code:
Sub Macro2()
Dim co As Workbook 'déclare la variable co (Classeur Origine)
Dim cc As Workbook 'déclare la variable cc (Classeur Cible)
Dim oo As Worksheet 'déclare la variable oo (Onglet Origine)
Dim oc As Worksheet 'déclare la variable oc (Onglet Cible)
Dim d As Range 'déclare la variable d (Données)
Dim dest As Range 'déclare la variable dest (DESTination)
 
Set co = Workbooks("Départ.xls") 'définit la variable co
Set cc = Workbooks("terminus.xls") 'définit la variable cc
Set oo = co.Sheets("Feuil1Depart") 'définit la variable oo
Set oc = cc.Sheets("Feuil1Terminus") 'définit la variable oc
 
With co 'prend en compte le classeur "Départ.xls"
    Set d = oo.Range("A1").CurrentRegion 'définit la variable d
    Set d = d.Offset(1, 0).Resize(d.Rows.Count - 1) 'redefinit la variable d (sans les étiquettes)
End With 'fin de la prise en compte du classeur "Départ.xls"
 
With cc 'prend en compte le classeur "terminus.xls"
    Set dest = oc.Range("A65536").End(xlUp).Offset(1, 0) 'définit la variable dest
End With 'fin de la prise en compte du classeur "terminus.xls"
 
d.Copy dest 'copie et colle les données
End Sub
 
Re : Transfert entre deux feuille de deux classeur

Bonjour Robert,bonjour le fil,

Merveuilleux, dans le mil.
Toute fois, comme stipulé, j'aimerais que ce qui est copier soit MA sélection (par les ligne) et non toute la page.

Exemple: il y a 4 ligne dans mon fichier départ, et la sélection est ligne 2 et 3.
Je lance la macro, bang 2 et 3 sont rendu dans terminal.

Pour être claire, je ne veux pas que la formule soit pour 2 et 3 mais belle et bien pour les ligne que je sélectionnerai.... Croyez vous que cela est faisable?

Merci
 
Re : Transfert entre deux feuille de deux classeur

Bonjour Ced, bonjour le forum,

Toute fois, comme stipulé, j'aimerais que ce qui est copier soit MA sélection (par les ligne) et non toute la page.
Comme stipulé où ???


Essaie comme ça alors :
Code:
Sub Macro2()
Dim co As Workbook 'déclare la variable co (Classeur Origine)
Dim cc As Workbook 'déclare la variable cc (Classeur Cible)
Dim oo As Worksheet 'déclare la variable oo (Onglet Origine)
Dim oc As Worksheet 'déclare la variable oc (Onglet Cible)
Dim dest As Range 'déclare la variable dest (DESTination)
 
Set co = Workbooks("Départ.xls") 'définit la variable co
Set cc = Workbooks("terminus.xls") 'définit la variable cc
Set oo = co.Sheets("Feuil1Depart") 'définit la variable oo
Set oc = cc.Sheets("Feuil1Terminus") 'définit la variable oc
 
With cc 'prend en compte le classeur "terminus.xls"
    Set dest = oc.Range("A65536").End(xlUp).Offset(1, 0) 'définit la variable dest
End With 'fin de la prise en compte du classeur "terminus.xls"
co.Activate
oo.Activate
Selection.Copy dest 'copie et colle les données
End Sub
 
Dernière édition:
Re : Transfert entre deux feuille de deux classeur

Bonjour Ced, bonjour le forum,


Comme stipulé où ???

Bonjour Robert, le fil,

Mile excuse je croyais l'avoir stipulé DANS mon fichier départ comme annotation. Mon erreur sur la stipulation.

Pour en revenir au sujet:

WoW, époustouflant…..Je crois que ça résume tout….

Merci énormément.

Vu cette merveilleuse modification, une mini amélioration met venu à l’esprit. et elle sera la dernière. Toute fois, Tu en as tellement fait que je comprendrais si tu as d’autres chats à fouetter.

Au cas si non, je tenterai quelque test…..

Amélioration :
Peut-on introduire une conséquence?
Si la ligne X est copiée, la case X3 du fichier départ deviendrait verte.
 
Re : Transfert entre deux feuille de deux classeur

Bonjour Ced, bonjour le forum,

Il faut pas faire des compliments après j'ai la tête qui enfle et je deviens c... Déjà qu'avant...

Une proposition pour répondre à ta requête :
Code:
Sub Macro2()
Dim co As Workbook 'déclare la variable co (Classeur Origine)
Dim cc As Workbook 'déclare la variable cc (Classeur Cible)
Dim oo As Worksheet 'déclare la variable oo (Onglet Origine)
Dim oc As Worksheet 'déclare la variable oc (Onglet Cible)
Dim dest As Range 'déclare la variable dest (DESTination)
 
Set co = Workbooks("Départ.xls") 'définit la variable co
Set cc = Workbooks("terminus.xls") 'définit la variable cc
Set oo = co.Sheets("Feuil1Depart") 'définit la variable oo
Set oc = cc.Sheets("Feuil1Terminus") 'définit la variable oc
 
With cc 'prend en compte le classeur "terminus.xls"
    Set dest = oc.Range("A65536").End(xlUp).Offset(1, 0) 'définit la variable dest
End With 'fin de la prise en compte du classeur "terminus.xls"
co.Activate 'active le classeur origine
oo.Activate 'active l'onglet origine
Selection.Copy dest 'copie et colle les données
 
'colore la cellule sélectionnée de la colonne 3 en vert (couleur à adapter il y a plusieurs vert...)
Application.Intersect(Columns(3), Selection).Interior.ColorIndex = 4
End Sub
 
Re : Transfert entre deux feuille de deux classeur

Bon jour,

Désolé Ced pour cette incursion mais je trouve que les messages manquent de plus en plus de condiments (sel, piment voire compliment).


...

Il faut pas faire des compliments après j'ai la tête qui enfle et je deviens creux (?)
Rassure-toi, Robert, on le voit toujours ton neurone !
Fouetter les chats, quelle réputation tu as ! 😉
La crème (anglaise) qui l’est, est préférable, me souffle ma lady chatte « her lait ».
 
Re : Transfert entre deux feuille de deux classeur

Bonjour le fil, bonjour le forum,

Ha Lii ça tombe bien car j'avais une vanne tellement foireuse que j'avais pas osé la placer. Mais puisque tu me tends la perche et que l'on est dans la crème anglaise...

Ced, on ne dit pas époustouflant mais femmetoutecrèmecaramel. Et paf !!!! Alors elle dit quoi maintenant ta chatte ? Olé ?
 
Re : Transfert entre deux feuille de deux classeur

Bonjour Robert,Lii le fil,

Pour ce qui est de la poési, je vous laisse çca car mon francais eest trop mauvais...
Continuer vous êtes beau à voir,

pour ce qui est de la formule suivante,
Application.Intersect(Columns(3), Selection).Interior.ColorIndex = 4
Si je voudrais faire
Application.Intersect(Columns(4), Selection).LE NOM DE LA FEUILLE LE COLLAGE À ÉTÉ FAIT.

Pour ce qui est de ta macro on pourrait dire:
femmetoutecrèmeEXTRAcaramelAVEC CERISE FRAICHE

Merci et longue vie à ce forum et ces intervenant de ta trame.
WoW
 
Re : Transfert entre deux feuille de deux classeur

Bonjour le fil, bonjour le forum,

Ced j'ai pas compris ta dernière requête. Bon c'est vrai que ce matin je suis pas bien réveillé, mais cette phrase au milieu de tes vannes qui me font bien rire, je ne sais si c'est sérieux :
Si je voudrais faire
Application.Intersect(Columns(4), Selection).LE NOM DE LA FEUILLE LE COLLAGE À ÉTÉ FAIT.
 
Re : Transfert entre deux feuille de deux classeur

Bon jour,

Variations à partir des productions de Robert 😉 (macros dans les 2 classeurs, avec ce que j’ai compris).

Olé ! Paff … el perro !!!
« C’est es Pagnol çà ! » s’exclame mon chien andalou avant de filer à l’anglaise la queue …
 

Pièces jointes

Re : Transfert entre deux feuille de deux classeur

Bonjour Lii,Robert,le forum

Tout dabort, merci Lii de la tentative.

Pour poursuivre, oui et non.
Ce que Robert èa fait pour la couleur est parfait.
Ma question était vis èa vis ça formule.

Application.Intersect(Columns(3), Selection).Interior.ColorIndex = 4

Je comprend bien le principe de cette dernière, toute fois, je voulais savoir la syntaxe si j'avais voulu introduire dans le fichier Départ , au bout de la ligne qui vien d'etre collé, dans la cellule D , le nom de la feuille ou la ligne à été copier.

Voir le fichier c'est plus clair
 

Pièces jointes

Re : Transfert entre deux feuille de deux classeur

Bonjour le fil et le forum,

Lii, Robert et Ced29, Excusez moi de m'introduire mais si quelqu'un règle ton probleme Ced29, j'aimerais bien que tu m'en fasse part. Je crois que je pourrais utiliser cette dernière à des fins personnel. Très intéressant.

Merci et encore désolé de l'insertion.

Jack
 
Dernière modification par un modérateur:
Re : Transfert entre deux feuille de deux classeur

Bonsoir à tous

Je me joins à vous (histoire de s'amuser avec VBA 😉 )

et pour rendre hommage à Robert l'oenophile vbaiste de haut vol

Code:
Option Explicit
Const f$ = "Feuil1"
Const d$ = "Départ"
Const t$ = "Terminus"
Sub Macro_De_Robert_By_Chouchen_Boy()
Dim co As Workbook, cc As Workbook, oo As Worksheet, oc As Worksheet

Set co = Workbooks(d & ".xls"): Set cc = Workbooks(LCase(t) & ".xls")
Set oo = co.Sheets(f & d): Set oc = cc.Sheets(f & t)
 
With Selection
    oc.[A65536].End(xlUp)(1).Resize(, .Columns.Count).Value = .Value
    .Item(3).Interior.ColorIndex = 4
    .Item(, .Columns.Count + 1) = Split(cc.Name, ".")(0)
End With

End Sub
Normalement le résultat devrait être indentique à ta macro Robert
si j'ai bien tout compris 😉
 
Re : Transfert entre deux feuille de deux classeur

Bonjour le fil, bonjour le forum,

Je ne suis pas chez moi et par hasard je jette un coup d'œil sur le forum... Et qu'y vois-je ? Je me fais traiter d'œnohile vbaiste de haut vol... C'est à se la prendre, se la couper et l'exposer au musée des petites choses non ?

Plus l 'humiliation du code avec ces simplifications qui me splitent le cœur... Ç'en est trop !!!

Choukran Staple.
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

M
  • Question Question
Réponses
5
Affichages
2 K
D
Réponses
0
Affichages
1 K
donmax
D
E
Réponses
3
Affichages
2 K
Emmanuel_3005
E
R
Réponses
0
Affichages
805
ririrourou
R
Retour