macro transfert d'un workbook vers un autre

G

gab

Guest
J'ai deux fichiers excel ouverts et je fais des copier coller de données d'un fichier à l'autre par l'intermédiaire d'une macro.

Exemple :
Fichier 1 cellule A1 (copier)
Fichier 2 cellule B3 (coller)

Fichier 1 cellule A2 (copier)
Fichier 2 cellule B7 (coller)

Fichier 1 cellule A12 (copier)
Fichier 2 cellule B9 (coller)

Le problème c'est que ma macro fait sans arrêt ces aller-retour en faisant des windows.activate....

Je suis sûr qu'il existe une méthode plus 'pro', qui permet de prendre toutes les données souhaitées d'un coup et de les transférer dans le fichier destination aux endroits voulus...

N'est-ce pas ?
 

Law

XLDnaute Junior
Bonsoir Gab, le forum,

Oui, c'est possible.
Exemple :

Au lieu de :
Fichier 1 cellule A1 (copier)
Fichier 2 cellule B3 (coller)


Tu peux faire la même chose avec cette ligne de code :

Fichier2.Feuille1.CelluleB3.value = Fichier1.Feuille1.CelluleA1

Et pour en finir avec les Windows Activate, penses aussi à écrire au début de ta macro :

Application.ScreenUpdating = false

Et à la fin de ta macro (avant le 'End Sub') :

Application.ScreenUpdating = true

Bonne soirée,
Ciao ciao !! ;)
 
G

gab

Guest
Bonjour et merci !!

Une question cependant, je lance mon fichier 2 par ce biais :

Dim fn As Variant
fn = Application.GetOpenFilename('', _
1, 'Select One File To Open', , False)
If TypeName(fn) = 'Boolean' Then Exit Sub
' the user didn't select a file
Debug.Print 'Selected file: ' & fn
Workbooks.Open fn

Comment faire appel à ce fichier (qui peut prendre n'importe quel nom, avec n'importe quelle extension) par ce biais :

Fichier2.Feuille1.CelluleB3.value = Fichier1.Feuille1.CelluleA1.value
 

Discussions similaires

Réponses
12
Affichages
247

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 229
Messages
2 086 426
Membres
103 206
dernier inscrit
diambote