UML Class Stencilの Class Master Shape のように、 Microsoft Visio 2013 x64で新しい Master Shape を作成したいと考えています。
クラス マスター シェイプをページに追加すると、2 つのメンバー マスター シェイプと 1 つのセパレータ マスター シェイプが自動的に追加されます。さらに、メンバーとセパレータのマスター シェイプをさらに追加できます。
書かれたVBAコードによって、他のマスターシェイプ自体を追加すると考えていました。しかし、以下のフルパスにあるUML Class (Metric) Stencilのファイルを確認したところ、VBA コードをまったく使用していないことがわかりました。
D:\Program Files\Microsoft Office\Office15\Visio Content\1033\USTRME_M.VSSX
ファイル拡張子は、「Visio マクロ有効ステンシル (.vssm)」ではなく「Visio Stencil (.vssx)」です。そのため、VBA コードを含めることはできません。
シェイプシートのアクション セクションにいくつかの新しい行を追加することで、何かできることがわかっています。ただし、新しいメンバ シェイプとセパレータ マスタ シェイプをクラス シェイプに追加するためのアクション行は存在しません。
図 1 - コンテキスト メニューに 2 つの追加オプションがあり、シェイプシートに関連する行がない Separator Shape
図 2 - セパレーター形状を挿入するバーを表示する
図 3 - コンテキスト メニューに 2 つの追加オプションがあり、シェイプシートに関連する行がないメンバー シェイプ
図 4 - 部材形状を挿入するバーを表示する
ページに配置された Class Shape を RMB クリックすると、コンテキスト メニューに 2 つの新しいオプションが表示されます。
- テンプレート パラメータを表示
- ステレオタイプを表示
そして、関連するアクションのセクション行が表示されます。
図 5 - コンテキスト メニューに 2 つのオプションが追加された Class Shape と ShapeSheet の関連する行
追加されたクラスシェイプのメンバーシェイプとセパレータシェイプを RMB クリックすると、「前後に「メンバー/セパレータ」を挿入」と表示されます。ただし、メンバーとセパレータのマスター シェイプを(クラス シェイプではなく)ページに直接追加すると、それらを RMB クリックすると、コンテキスト メニューに追加のオプションが表示されません。
図 6 - コンテキスト メニューに追加オプションがない Separator Shape
図 7 - コンテキスト メニューに追加オプションがないメンバー形状
シェイプシートを確認しましたが、上記のアクションに関連する行が見つかりません。
さて、私の質問は、Microsoft によって作成された UML クラス ステンシルのクラス シェイプのような VBA コードなしで、他のマスター シェイプを受け入れる機能を備えた新しいマスター シェイプを作成するにはどうすればよいかということです。