Please follow the MicroStation Programming forum best practices.
Identify Your Platform
Please identify the version of MicroStation, or other product such as PowerDraft, that you are using: MicroStation CONNECT or MicroStation V8i. What is the 8-digit version number (e.g. 10.xx.yy.zz) of MicroStation?
The APIs supplied with MicroStation CONNECT are different to those supplied with MicroStation V8i. Consequently, our answers are likely to be different.
Code Syntax Highlighting
When you post code, use the Forum advanced editor's syntax highlighting tool. That's the icon that resembles a pencil:
Placement Macro
Write a VBA class that Implements IPrimitiveCommandEvents. It will behave as a MicroStation user expects and will let user change views and modify views while the app. is active.
There are examples in VBA help.