Bonjour,

Je cherche à exécuter une macro excel depuis access.

En faisant des recherches sur internet, j'ai trouvé un code qui fonctionne :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
Dim MonObjet As Object
Set MonObjet = GetObject("", "Excel.Sheet")
MonObjet.Application.workbooks.Open "C:\Données.xls"
MonObjet.Application.Run "Macro1"
MonObjet.Application.workbooks.Close
Set MonObjet = Nothing
(Je souhaite que tout le traitement soit invisible pour l'utilisateur, c'est pourquoi je n'ai pas activé la fonction "visible = true").

1) Le code s'exécute parfaitment, mais tous les classeurs excel sont fermés à la fin. Je ne souhaite fermer que le classeur "données.xls". Je sens que ça tient à peu de choses, mais quelqu'un peut-il me proposer une astuce svp ?

2) Lorsque je lance ce code alors qu'un classeur excel (différent de données.xls) est déjà ouvert, excel s'affiche et le traitement n'est plus transparent. Y a t-il quelque chose à faire ?

Merci d'avance !