Macro copie de donnés d'un classeur fermé

  • Initiateur de la discussion delirium
  • Date de début
D

delirium

Guest
Bonsoir tous le monde.
Et oui les vacances sont finis pour moi, mais bon heureusement il y a Excel download pour occuper mes soirées après le taf.

Bon voila ce que je voudrais réaliser :

J'ai un classeur avec userform dans lequel un bouton "atelier" doit recopier des données d'un autre classeur qui n'est pas ouvert.

Pour le moment le code que j'ai réalisé est le suivant :

Private Sub CommandButton1_Click()
Range("M54").FormulaR1C1 = "=[Atelier.xls]Feuil1!R2C1"
Range("M55").FormulaR1C1 = "=[Atelier.xls]Feuil1!R3C1"
Range("M56").FormulaR1C1 = "=[Atelier.xls]Feuil1!R4C1"
Range("M57").FormulaR1C1 = "=[Atelier.xls]Feuil1!R5C1"
Range("M58").FormulaR1C1 = "=[Atelier.xls]Feuil1!R6C1"
Range("M59").FormulaR1C1 = "=[Atelier.xls]Feuil1!R7C1"
Range("M60").FormulaR1C1 = "=[Atelier.xls]Feuil1!R8C1"

"Je doit écrire ce code pour plus 600 cellules"

UserForm4.Hide
End Sub

Bref une tache très laborieuse à réaliser sans erreurs.

Je voudrais savoir si ce n'est pas possible d'écrire des plages plus tôt que des cellules, du genre :

Range("M54:M60").FormulaR1C1 = "=[Atelier.xls]Feuil1!(plage de R2C1 à R8C1)"

Mais que faut il mettre à la place de R2C1 pour cela.

Merci du coup de main.
 
D

delirum

Guest
Salut Zon.

Je n'ai pas réussi à utiliser ton code

J'ai écrit ceci :

Private Sub CommandButton1_Click()
With Range("M54")
.FormulaR1C1 = "=[Atelier.xls]Feuil1!R2C1"
.autofill [M54:M60]
end with

mais ca ne marche pas.

il recopie uniquement le cellule "=[Atelier.xls]Feuil1!R2C1
or je voudrais que dans les cellules [M54:M60] de mon classeur soit recopier les cellules de mon classeur [Atelier.xls]Feuil1! [A2:A7].

Comme un copier collé d'une plage de cellules d'un classeur à un autre mais sans ouvrir le classeur de source de donnés

Merci et A + tard.
 

Statistiques des forums

Discussions
314 208
Messages
2 107 290
Membres
109 796
dernier inscrit
aelgar