- Trained on our vast library of engineering resources.
Learning MicroStation VBA

Chapter 37: Accessing Data from External Applications

We have controlled MicroStation from within MicroStation's VBA environment. We have also controlled Microsoft Excel from within MicroStation's VBA environment. It would stand to reason, then, that we can control MicroStation from Excel's VBA environment. And we can.

ActiveX / COM Basics

What do "ActiveX Automation" and "COM" have in common? When viewed in a 'common' light, they have everything in common because they are often referred to as the same thing. In essence, when we talk about ActiveX Automation and/or COM, we are talking about a mechanism used to allow one application to 'talk' to another application. We are talking about one application 'driving' the other one or 'deriving' information from the other one.

For years, application vendors have attempted to come up with ways for their customers to customize their software. A large variety of methods have been devised to accomplish this. Dynamic Data Exchange (DDE) was a method whereby one application could send messages to the other. Other software developers have come up with clever ways to simulate the user's interaction with the software including mouse movement and clicking on the application's buttons as well as simulating keyboard entry in the other application. And yet others have invented scripting mechanisms that would read a file and follow instructions contained in the file.

ActiveX Automation gives us the means to programmatically control applications through the use of the Application's object model. We traverse the Object Model until we arrive at the Object that exposes the Properties, Methods, and...

UNLIMITED FREE ACCESS TO THE WORLD'S BEST IDEAS

SUBMIT
Already a GlobalSpec user? Log in.

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.

Customize Your GlobalSpec Experience

Category: Middleware
Finish!
Privacy Policy

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.