Ouverture d'excel via Script VBA depuis Access avec Chargement objet de XLSTART
Bonjour,
j'utilise fréquement le code suivant depuis access pour manipuler les fichiers excel créé depuis Access :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| Sub Execute_Excel_Script(document As String, Excel_Workbook As String, Script_Folder As String, Excel_Script_File As String, Script_Name As String, Specific_param As Variant)
On Error Resume Next
Dim XLApp As Object
Dim ExcelWasNotRunning As Boolean ' Indicateur de libération finale.
Dim FullScript As String
FullScript = Trim(Script_Folder) & Trim(Excel_Script_File)
Set XLApp = GetObject(, "Excel.Application")
If err <> 0 Then
err.Clear
ExcelWasNotRunning = True
Set XLApp = CreateObject("Excel.application")
Else
ExcelWasNotRunning = False
End If
XLApp.Visible = True
Set XlWkb = XLApp.Workbooks.Open(FullScript)
'
' ici nous lançons les macros automatiques d'Excel mais vous pouvez mettre du code
'
XlWkb.RunAutoMacros xlAutoOpen
XLApp.Run Script_Name, document, Excel_Workbook, Excel_Script_File, Specific_param
'XlWkb.Save
XlWkb.Close
'If ExcelWasNotRunning = True Then
XLApp.Application.Quit
'End If
Set XlWkb = Nothing
Set XLApp = Nothing
'Set m_Access = Access.Application
'm_Access.Visible = True
End Sub |
J'ai un jour trouvé ce code quelquepart sur ce site et je l'ai juste un peu adapté à mes besoins.
Je rencontre le problème suivant :
Lorsqu'excel est ouvert de cette manière, les objet complémentaires (.XLS, .XLA) qui sont habituelelment chargé lors de l'ouverture d'excel car sauvés dans le folder C:\Program Files\Microsoft Office\OFFICE11\XLSTART ne sont pas chargés.
Je voudrais pouvoir y accéder de manière transparente sans changer le code VBA du fichier excel ouvert, car si j'ouvre le ficheir excel par la voie normalle, mes objets complémentaires sont bien disponibles.
Voici la ligne de code qui ne fonctionne pas :
Code:
'res = Application.Run("GSAPI_VBA.XLS!Converttopdf_Silent")
Car le fichier C:\Program Files\Microsoft Office\OFFICE11\XLSTART\GSAPI_VBA.XLS n'est pas chargé.
Merci d'avance.