Rechercher : dans
Par :

[VBA excel] Copier vers un autre classeur

Dernière réponse le 8 aoû 2007 à 10:38:19 schont, le 1 aoû 2007 à 15:25:09 
 Signaler ce message aux modérateurs

Je souhaiterais copier la valeur de certaines cellules d'un classeur A vers des textbox d'un userform d'un classseur B.
Concrètement j'aimerais quand je clique sur un bouton dans le classeur A (déjà rempli) la macro liée m'ouvre le classeur B, m'affiche l'userform et copie les infos choisies dans les textbox, comme ca je clique sur le bouton "valider" de l'userform et les données sont ajoutées dans le classeur B. J'ai une piste de code mais ca ne marche pas :

Sub Bouton1_QuandClic()
Workbooks.Open Filename:="R:\CodeBarre\31_07_2007 (version 1).xls"
Workbooks("31_07_2007 (version 1).xls").Sheets(1).Activate
Sheets("Feuil1").Cells(Lg, "B").Value = Workbooks("31_07_2007 (version 1).xls").Sheets("Feuil1").UserForm4.ComboBox5.Value  'Type
' ...
End Sub


Merci d'avance
Configuration: Windows XP
Internet Explorer 6.0

1

Sir_DEC, le 3 aoû 2007 à 09:10:42

Sans bien étudier ton cote je peux déjà te dire que "Cells(Lg, "B")" n'est pas correct.

Il faut écrire Cells(Lg, 2) ou Range("B" & Lg).

Répondre à Sir_DEC

2

 schont, le 8 aoû 2007 à 10:38:19

Merci de m'avoir répondu, le problème ne venait pas de là, j'utilise cette commande dans un autre fichier vba et elle ne m'a jamais posée problème.
Pour répondre à ma question ;) :
J'utilise la fonction copie qui me copie ma feuille du classeur A vers une autre feuille de mon classeur B, et j'ouvre l'UserForm ensuite qui va récupérer les valeurs sur la copie du classeur B.

Sub Bouton1_QuandClic()
Workbooks.Open Filename:="S:\Mon Classeur B.xls"
Windows("Mon Classeur A.xls").Activate
    Sheets("Feuille du classeur A").Select
    Range("A1:K45").Select
    Range("K45").Activate
    Selection.Copy
    Windows("Classeur B.xls").Activate
    Sheets("Feuil2").Select
    Range("a1").Select
    ActiveSheet.Paste
      
    
    Sheets("Feuil1").Select
UserForm1.Show
 Application.CutCopyMode = False ' pour effacer le pressepapier sinon j'ai le message  de trop plein quand je ferme excel
End Sub

Répondre à schont