VBA: Switch front Application in VBA

I am trying to send some information from MS Access to another application (Cumulus) and then have that application display data related to the information.

The Cumulus Application used to be fully VB scriptable but has since a few years switched to JAVA instead. However, it does have one single Object in it's VB Dictionary: The Application object, and this one supports only ONE Function (which allows me to have it start one of its JAVA plug-ins, called EJPs and pass some data to it)

I am succesful in using the command to send the data to Cumulus, and if Cumulus is not already running, it will launch and come to the front and then execute my command (by executing my JAVA plug-in with the data that was sent from Acceess)

HOWEVER: If Cumulus is already running, it will NOT come to the front and the user will therefore not see the result.

My Question: How can I either force MS Access to the background or bring Cumulus to the foreground? Is there a general command in VBA that would allow this?



For reference, here is the simple code snippet in Access:

Private Sub Command0_Click()
Set cuApp = CreateObject("Cumulus6.Application")
reply = cuApp.CallEJP("com.modula4.testing.MainEJP", "Hi")
MsgBox reply
End Sub
BohumilAsked:
Who is Participating?
 
Wayne Taylor (webtubbs)Connect With a Mentor Commented:
Hi Bohumil,

You could try this....

    AppActivate "Cumulus"

...which activates the named application. Or you might like to try something like this....

    Set cuApp = GetObject("Cumulus6.Application")

...which retreives a running instance of the application.

Regards,

Wayne
0
 
BohumilAuthor Commented:
Thanks Wayne,
For some reason I did not seem to get a notification when you posted your suggestion--so please excuse the late acceptance. The AppActivate "..." command did the trick in principle. The problem is however that it wants the exact Window Title as an argument, and that is a bit of a problem since it depends on a number of things in Cumulus--but I think I'll be able to find a way to determine the title in the JAVA code and return it to VB as a first step and then call the Application a second time to bring it to the front and execute the actual command I am interested in.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.