Copier des données d'un classeur vers un autre classeur ouvert avec un autre Excel

white-spirit

XLDnaute Occasionnel
Bonsoir le Forum,

je recherche un coup de pouce pour finir une macro, qui me servirait à ceci:

- j'ouvre 2 fois l'appli Excel, pour en glisser une sur un écran déporté

- actuellement, je copie-colle (link) des données du Classeur1/Excel1 vers le Classeur2/Excel2, manuellement, ça marche bien.

- je souhaiterais le faire par une macro dans Classeur1

j'ai essayé ceci:

Sheets("maison").Range("C5:C7").Copy
Workbooks("Classeur2").Worksheets("voiture").Activate
Range("C5").Select
ActiveSheet.Paste Link:=True

ça ne fonctionne que si Classeur1 & Classeur2 sont ouverts par le même Excel, je pense qu'il faut peut-être décrire un peu plus le chemin d'accès ....??

Si qq'un peut m'éclairer la-dessus, ce serait très sympa....

Merci d'avance, cordialement,

WS
 

white-spirit

XLDnaute Occasionnel
Re : Copier des données d'un classeur vers un autre classeur ouvert avec un autre Exc

Bonsoir Grisan29,

merci d'avoir répondu (entre bretons ....)

j'ai essayé la méthode d'enregistrement.... et ça n'aboutit pas, en fait. Le début (sélection et copie des données) apparait bien sur l'enregistrement de la macro dans le classeur de départ, mais comme je change d'appli (je répète, c'est UN AUTRE Excel qui est ouvert), la suite des actions n'est pas enregistrée ..... pas de bol !
Ce que je recherche n'est peut-être pas faisable ? Si qq'un a une idée !

Cordialement,

WS
 

grisan29

XLDnaute Accro
Re : Copier des données d'un classeur vers un autre classeur ouvert avec un autre Exc

bonsoir white spirit(breton de quel coin)

j'ai fait un essai en enregistrant un classeur vierge dans mes documents, puis j'ai ouvert un autre classeur sur lequel j'ai inscrit des données que j'ai copiée et coller dans le classeur que j'avais enregistrer avant, avec l'enregistreur j'ai fait ce code en meme temps
Code:
Sub Macro1()
'
' Macro1 Macro
'

    Range("B6").Select
    Selection.Copy
    Workbooks.Open Filename:= _
                   "C:\Users\UTILISATEUR\Documents\essai enregistrement.xlsx"
    Range("B6").Select
    ActiveSheet.Paste

End Sub
il est brut mais fonctionne, puis j'ai créer et enregistrer un classeur nommé "cl1" sur le bureau et créer un autre classeur nommé "cl2" également enregistrer sur le bureau, puis j'ai réouvert cl1 j'ai mis quelques mots et créer le code suivant avec l'enregistreur
Code:
Sub Macro3()
'
' Macro3 Macro
'

'
    Range("C8").Select
    Selection.Copy
    Workbooks.Open Filename:="C:\Users\UTILISATEUR\Desktop\Cl2.xlsx"
    Range("C7").Select
    ActiveSheet.Paste
End Sub

ce qui est relativement pareil que le premier
ou alors avec les classeurs cl1 et cl2 ouvert cote a cote ce qui donne
Code:
Sub Macro5()
'
' Macro5 Macro
'

'
    Selection.Copy
    Windows("Cl2.xlsx").Activate
    Range("B8").Select
    ActiveSheet.Paste
End Sub
mais un pro ferai surement autrement, les codes sont issus de l'enregistreur et brut
Pascal
 
Dernière édition:

white-spirit

XLDnaute Occasionnel
Re : Copier des données d'un classeur vers un autre classeur ouvert avec un autre Exc

Bonjour Grisan29,

breton du 22290...

je te remercie de tes recherches & essais, je testerai cela dans qq jours.
De mon coté j'ai trouvé une solution sur un autre forum, qui consiste à écrire une macro dans mon classeur principal, qui télécommande l'ouverture d'une autre instance d'Excel, ouvre un classeur donné, et inscrit dedans les liens dont j'ai besoin.
J'avoue avoir été bluffé ...
Voici le code:

Dim appExcel As Excel.Application
Set appExcel = CreateObject("Excel.Application")

Range("S4007:BF4126").Copy
With appExcel
.Workbooks.Open ActiveWorkbook.Path & "\" & "Affichage défilant"
.Visible = True
.ActiveWorkbook.RunAutoMacros xlAutoOpen
.Range("D9").Select
.ActiveSheet.Paste Link:=True
End With

le tout intégré à mes autres besoins, dupliqué, etc...

Cordialement

WS
 

Discussions similaires

Statistiques des forums

Discussions
312 488
Messages
2 088 862
Membres
103 979
dernier inscrit
imed