[VBA excel] Copier vers un autre classeur

Résolu/Fermé
schont Messages postés 33 Date d'inscription samedi 14 juillet 2007 Statut Membre Dernière intervention 11 juillet 2013 - 1 août 2007 à 15:25
schont Messages postés 33 Date d'inscription samedi 14 juillet 2007 Statut Membre Dernière intervention 11 juillet 2013 - 8 août 2007 à 10:38
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
A voir également:

2 réponses

schont Messages postés 33 Date d'inscription samedi 14 juillet 2007 Statut Membre Dernière intervention 11 juillet 2013 10
8 août 2007 à 10:38
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
5
Sir_DEC Messages postés 143 Date d'inscription mardi 17 avril 2007 Statut Membre Dernière intervention 12 mai 2012 75
3 août 2007 à 09:10
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).
0