状況は次のとおりです。
マクロ Foo は、ファイル foo.vss で定義されています。マクロ バーは、ファイル bar.vsd で定義されています。
Bar() は、ある時点で Foo() を呼び出すことになっています。それは可能ですか?
役立つ場合:
foo.vss は、bar.vsd で開かれるステンシル ファイルです。
参考までに:
Visio/vba の使用を強制されています。ダイアグラムからSQLを生成する奇妙な古いシステムで、本当に醜いです。
これまで Visio を使用したことはありませんでしたが、ざっとブラウズしただけで Excel VBA を取得できました。それがうまくいくかどうかはわかりませんが、試してみてください:
http://www.vbaexpress.com/kb/getarticle.php?kb_id=279
http://www.xtremebbtalk.com/showthread.php?t=139135
これは、コードを含むドキュメントで ExecuteLine メソッドを使用して可能です。
したがって、あなたの例では次のようになります。
Visio.Documents("Foo.vss").ExecuteLine "Foo"
Excel から Visio マクロを呼び出すためにこれをかなり使用しましたが、非常にうまく機能しています。ExecuteLine は、イミディエイト ウィンドウから実行できるほとんどすべてを実行するように見えるため、実際には有効な VBA コードの行を渡しています...
それが役立つことを願っています