ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Hide Access when macro run from Excel (https://www.excelbanter.com/excel-programming/326933-hide-access-when-macro-run-excel.html)

Snowsride

Hide Access when macro run from Excel
 
I have copied the following code from the MS KB - it works OK but how can I
stop Access becoming visible while the macro runs?

Sub Run_Access_Macro()

Application.ScreenUpdating = False
'Opens Microsoft Access and the file nwind.mdb
Shell ("c:\program files\microsoft office\office\msaccess.exe
c:\apps\data\access\myfile.mdb")

'Initiates a DDE channel to Microsoft Access
Chan = DDEInitiate("MSACCESS", "system")
'Activates Microsoft Access
Application.ActivateMicrosoftApp xlMicrosoftAccess
'Runs the macro "Sample AutoExec" from the NWIND.MDB file
Application.DDEExecute Chan, "mymacro"
'Terminates the DDE channel
Application.DDETerminate Chan

Application.ScreenUpdating = True
End Sub


Dave Patrick[_2_]

Hide Access when macro run from Excel
 
If you can convert the macro to VBA then something like this may work.

Dim appAccess, strConPathToDB
strConPathToDB = "D:\data\Access\db1.mdb"
Set appAccess = CreateObject("Access.Application.10")
appAccess.OpenCurrentDatabase strConPathToDB
appAccess.DoCmd.OpenModule "Module1", "SomeProc"
appAccess.Quit

--
Regards,

Dave Patrick ....Please no email replies - reply in newsgroup.
Microsoft Certified Professional
Microsoft MVP [Windows]
http://www.microsoft.com/protect

"Snowsride" wrote:
|I have copied the following code from the MS KB - it works OK but how can I
| stop Access becoming visible while the macro runs?
|
| Sub Run_Access_Macro()
|
| Application.ScreenUpdating = False
| 'Opens Microsoft Access and the file nwind.mdb
| Shell ("c:\program files\microsoft office\office\msaccess.exe
| c:\apps\data\access\myfile.mdb")
|
| 'Initiates a DDE channel to Microsoft Access
| Chan = DDEInitiate("MSACCESS", "system")
| 'Activates Microsoft Access
| Application.ActivateMicrosoftApp xlMicrosoftAccess
| 'Runs the macro "Sample AutoExec" from the NWIND.MDB file
| Application.DDEExecute Chan, "mymacro"
| 'Terminates the DDE channel
| Application.DDETerminate Chan
|
| Application.ScreenUpdating = True
| End Sub
|




All times are GMT +1. The time now is 12:17 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com