Bonjour,

Je recherche in moyen de copier une WorkSheet dans une instance d'Excel qui diffère de celle de la source. Je precise qu'il faille à tout prix que l'instance Excel de déstination soit différente de celle de la source... car je souhaite tout encapsuler dans une classe dédiée au traitement des fichiers externes (non-présente ici pour se concentrer à l'essentiel). L'idéal serait de copier la feuille telle quell sans avoir à remodifier le contenu (ListObject,...)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Option Explicit
 
Sub test()
 
    On Error GoTo exit_sub
 
    Dim pApp As New Excel.Application
 
    pApp.Visible = True
 
    Dim pWorkBook As Workbook: Set pWorkBook = pApp.Workbooks.Add
 
    'Sheet1 est la WorkSheet à copier du WorkBook de l'instance courante d'Excel contenant notamment le ListObject
    Sheet1.Copy pWorkBook.Worksheets(1) '<- ne fonctionne visiblement pas !!
 
    Debug.Print "ok"
 
exit_sub:
 
    pApp.Quit
 
    Set pApp = Nothing
 
End Sub
Merci par avance !