sandrine1327
Messages postés7Date d'inscriptiondimanche 20 novembre 2005StatutMembreDernière intervention27 août 2009
-
27 août 2009 à 10:23
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 2021
-
27 août 2009 à 17:36
Bonjour,
Je souhaiterais pouvoir sélectionner en VBA un objet Excel.Application différent de celui dans lequel je travaille, afin d'effectuer des actions dessus.
J'utilise :
Dim exApp As Excel.Application
Set exApp = New Excel.Application
pour créer une nouvelle Excel.application, mais quand le code s'arrête, je souhaiterais pouvoir accéder à cette Excel.application.
Je pensais à quelque chose du genre
Set exApp = Excel.Application(2)
mais cela ne fonctionne pas.
Quelqu'un aurait une idée ?
Calade
Messages postés1207Date d'inscriptiondimanche 20 avril 2003StatutMembreDernière intervention 4 juin 201610 27 août 2009 à 10:51
Bonjour,
A mon avis, il est inutile de chercher à ouvrir Excel plusieurs fois, ce que fait Excel.Application, par contre sur une seule instance d'Excel tu dois pouvoir ouvrir plusieurs fichiers (ou Workbooks) et passer de l'un à l'autre tant qu'ils ne sont pas fermés.
Tout ceci reste à être confirmé par des tests, ne l'ayant pas testé.
sandrine1327
Messages postés7Date d'inscriptiondimanche 20 novembre 2005StatutMembreDernière intervention27 août 2009 27 août 2009 à 11:13
Bonjour,
En fait l'intérêt pour moi d'ouvrir Excel plusieurs fois, vient du fait que je travaille sur un écran dual screen, et que je préfère avoir un Excel ouvert sur chacun de mes écrans.
Mais oui, si je n'ouvre qu'un seul fichier Excel, je n'ai aucune difficulté à passer d'un workbook à l'autre.
Calade
Messages postés1207Date d'inscriptiondimanche 20 avril 2003StatutMembreDernière intervention 4 juin 201610 27 août 2009 à 11:23
OK, alors autre piste jamais testé non plus.
Si tu essaies:
Set exApp1 = Excel.Application
Set exApp2 = Excel.Application
et quand dans chacun de tes exApp, tu ouvres un classeur différend, qu'est ce que cela donne ? (avec une variable de type Workbook différente évidemment).
sandrine1327
Messages postés7Date d'inscriptiondimanche 20 novembre 2005StatutMembreDernière intervention27 août 2009 27 août 2009 à 13:26
Donc j'ai testé ta proposition, et en fait dans les variables exApp1 et exApp2, c'est l'application Excel en cours d'utilisation qui est enregistré (celle ou se situe mon code VBA) et non la seconde application.
Dommage, j'aurais aimé que ca marche...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Calade
Messages postés1207Date d'inscriptiondimanche 20 avril 2003StatutMembreDernière intervention 4 juin 201610 27 août 2009 à 13:35
Je réfléchis un peu au fur et à mesure, ce cas étant nouveau pour moi.
Essaye avec une seule variable exApp (une seule application Excel en mémoire donc) mais 2 variables de type Workbook ouvertes simultanément (comme si tu avais 2 classeurs ouverts dans une seule instance d'Excel).