次のVisioマクロ(VBAを使用)は、現在選択されている図形を回転します。
ActiveWindow.Selection.Rotate90
その形状を変数に保存するにはどうすればよいですか?以下のコードを試してみました。
Dim s1 as Shape
Let s1 = ActiveWindow.Selection
s1.Rotate90
そのコードはコンパイルされず、「選択」で「引数はオプションではありません」というエラーが表示されます。
これをSelection(0)に変更すると、ランタイムエラー「無効な選択識別子」が発生します。
Selection(1)を試してみると、代わりに「オブジェクト変数またはブロック変数が設定されていません」というメッセージが表示されます。これは、選択範囲にオブジェクトが1つしかないというVBAの不満の方法だと思います。