Well, that complicates the problem. You've invested in a process that has limitations.
Going back to the visa example, I can ask the border agent to deliver messages (run sub) for me, but he won't let me deliver the message in person (wait for mouse click) and I don't have time to wait. You see, each application has it's own process which uses threads and memory. VBA runs within an app's process and it can't control another app's resources, i.e. memory, events except for what the other app makes public. COM (the Microsoft technology/api for controlling apps programmatically that VBA uses) apps don't give up control of their process to another app. In VBA, it can show a form in it's own process and wait for the user to control it by responding to form events. But you don't have access to those events in another app's process. They're not public. COM is not designed to work this way.
In order to reuse the form you've made in Inventor, you have to think of a way to start/run it from Inventor and add the tasks that you're trying to run from AutoCAD. Since Inventor can open a dwg, can you do that and access the dwg layouts from Inventor?
You can also start the process in AutoCAD, save data in the dwg, an external file or the registry, and then ask the user switch to Inventor and pick up where AutoCAD left off, by reading in the data left by AutoCAD. Kind of sloppy, but it should work.
Ed
Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.
How to
post your code.