Vba probleme d'affectation

Bonjour,
J'ai un petit souci avec une macro excel permettant de recopier des cellules d'un workbook vers un autre.

Pour ceci j'ai besoin d'affecter chaque workbook a une variable, je fais :
Dim cotation As Excel.Worksheet
Dim master As Excel.Worksheet

Set cotation = ActiveWorksheet
ChDir "C:\Home\fabre_r\Worksheet"
Workbooks.Open Filename:="C:\Home\fabre_r\Worksheet\TECHPUB2004.xls"
Sheets(master).Select
Range("c11").Select
Set master = ActiveWorksheet

Ceci est destiné a etre dans une macro , mais je n'arrive pas a affecter le workbook qui sera ouvert quand je lancerais la macro a partir d'un bouton a mes variables "cotation" et "master"

Comme vous pouvez le voir je débute merci de votre aide...

6 réponses

  • Votes
  • Date
  • Date décroissante
  1. Une veille habitude ....

    l : local variable
    WB : WorkBook

    DaNot
    un Libre ouvert à la source...
    1. Merci beaucoup, ca fonctionne..

      Une ptite question vu que je vais devoir continuer a develloper en Vba, c'est pourquoi ca marche maintenant ?
      le lWB_ signifie quoi ?

      Merci d'avance
      1. Salut,

        Pour avoir le wookbook actif dans une variable, il faut utiliser :
        Dim lWB_Master as Workbook
        
        Set lWB_Master = ActiveWorkbook


        Ensuite, pour passer d'un workbook a l'autre, il faut utiliser la méthode Activate :
        ...
        lWB_Master.Activate
        ...


        DaNot
        un Libre ouvert à la source...
        1. En fait le probleme est "Comment affecter le workbook ouvert (qui peut avoir differents noms) a ma variable "cotation" "

          Cette macro sera affectée a un bouton situé dans ledit workbook
          1. Bonjour,

            Ne serait-ce pas plutôt :

            Dim cotation As Excel.Workbook
            Dim master As Excel.Workbook

            Set cotation = ActiveWorkbook
            ChDir "C:\Home\fabre_r\Worksheet"
            Workbooks.Open Filename:="C:\Home\fabre_r\Worksheet\TECHPUB2004.xls"
            Set master = ActiveWorkbook
            Range("c11").Select

            Workbook(cotation).Activate
            ' ....

            Workbook(master).Activate
            ' ....

            Je ne suis pas sur de bien comprendre !

            Lupin