Problème Sélectionner feuille autre classeur

flostralian Messages postés 32 Statut Membre -  
flostralian Messages postés 32 Statut Membre -


Bonjour à tous,

J'ai cherché une solution sur le forum mais en vain... J'ai essayé de nombreuses solutions énoncées .....

Partant d'excel, je souhaite faire une macro (VB2005) pour exporter des données excel d'un premier classeur vers un autre classeur.

Le problème est au niveau de la sélection de la feuille et de de la sélection de cellules dans le second classeur.

Lors de la macro, je me suis rendu compte que la sélection se faisait dans le premier classeur ou j'ai lancé la macro, et non dans le second comme souhaité.

Pouvez vous me donner quelques conseils svp?

Merci beaucoup

Voici mon code:
------------------------------------------------------------------

Sub Export()

Dim appExcel As Excel.Application 'Application Excel
Dim wbExcel As Excel.Workbook 'Classeur Excel
Dim wsExcel As Excel.Worksheet 'Feuille Excel

'Ouverture de l'application = OK
Set appExcel = CreateObject("Excel.Application")
appExcel.Visible = True

'Ouverture d'un fichier Excel = OK
Set wbExcel = appExcel.Workbooks.Open("D:\....\toto.xls")
appExcel.Visible = True

' Selection de wsExcel correspond à la deuxième feuille du classeur = PROBLEME = "Run time error 9, Subscript out of range" sur les lignes suivantes.
' la sélection se fait dans le premier classeur, et non dans le second comme souhaité.
Set wsExcel = wbExcel.Worksheets(2)

'J'ai aussi essayé pour la ligne ci dessus de remplacer par les codes suivants.mais en vain.
'Activebook.Sheets("feuille2").Select
'ActiveSheet.Range("A4").Select

End

2 réponses

  1. melanie1324 Messages postés 1561 Statut Membre 156
     
    bonjour,

    en plus simple :

    Sub Export()

    Dim appExcel As Excel.Application 'Application Excel
    Dim wbExcel As Excel.Workbook 'Classeur Excel
    Dim wsExcel As Excel.Worksheet 'Feuille Excel

    'Ouverture de l'application = OK
    Set appExcel = CreateObject("Excel.Application")
    appExcel.Visible = True

    'Ouverture d'un fichier Excel = OK

    classeurorigine = activeworkbook.name

    Set wbExcel = appExcel.Workbooks.Open("D:\....\toto.xls")
    appExcel.Visible = True

    classeurexport = activeworkbook.name

    workbook(classeurorigine).activate
    Activebook.Sheets("feuille2").Select
    ActiveSheet.Range("A4").Select

    End
    0
  2. flostralian Messages postés 32 Statut Membre
     
    Merci de ton aide,
    J'essayerai demain ..
    Florian
    0