9 | 選択コントロールの位置を取得する | ||
フォーム上のコントロール(Controlオブジェクト)の「InSelection」プロパティで、デザインビュー上でのコントロールの選択状態を取得・設定することができます。”True”が選択状態、”False”が非選択状態です。 また、「Top」プロパティでコントロールの”上位置”を、「Left」プロパティで”左位置”を取得・設定することができます。 フォームのControlsコレクションからControlオブジェクトをループで取り出し、InSelectionプロパティが”True”であるものだけ処理することで、デザインビュー上で現在選択されているコントロールのそれぞれの上位置と左位置をリストアップすることができます。
プログラム
Sub SampleCode_09() '選択コントロールの位置を取得する Dim ctl As Control Const TWIP_CM = 567 '1cmのTwip値 'アクティブフォームのすべてのコントロールのループ For Each ctl In Screen.ActiveForm.Controls With ctl If ctl.InSelection Then '選択されていたらコントロールの上位置と左位置を出力 Debug.Print .Name, Debug.Print Format(.Top / TWIP_CM, "0.000cm"), Debug.Print Format(.Left / TWIP_CM, "0.000cm") End If End With Next ctl End Sub 実行例
■実行前■実行後 |
|||
|
Copyright © T'sWare All rights reserved |