エクセルのワークシート上にユーザーフォームを表示させる時に、文字にかからないように表示場所を指定したいことありますよね。
当然ながら、好きな位置に表示することができます。
StartUpPositionプロパティを設定する
ユーザーフォームの表示初期設定は、画面中央に表示されるように設定されています。
その為表示位置を変更したいユーザーフォームのプロパティから設定可能です。

まず、左のVBAProjectの中から表示位置を変更したいUserFormを選びます。
上の図ではUserForm5をクリックして表示してあります。
そして、ユーザーフォーム自体をクリックすると、プロパティが表示されますので、プロパティ内の「StartUpPosition」の設定値を変更するだけです。
StartUpPositionの設定方法は簡単で、StartUpPositionの文字自体をクリックすると、右側に設定値0~3が選択できるようになります。
初期設定値は「1」です。
- 「0」手動
- 「1」エクセル画面中央
- 「2」ディスプレイ画面中央
- 「3」画面の左上
手動を選択したら、表示させる高さや横位置も自由に設定することができるので、この手動を選択することがほとんどです。
手動でユーザーフォームの表示位置を自由に設定
では、手動を選んだら、高さと位置を設定しましょう。
これにより、自由にユーザーフォームを表示する位置を自分で決めることができます。
もちろんユーザーフォームごとに指定できるのでとても重宝しています。
StartUpPositionの2つ下の項目「Top」で表示高さの位置を指定できます。
「0」で入力すると画面の一番上に表示されます。また、画面サイズによりますが、200ぐらいで中央付近ですね。
StartUpPositionの15個上の項目「Left」で左からの位置を指定できます。
「0」で入力すると画面の一番左端に表示されます。同じく画面サイズによりますが、350ぐらいが中央付近ですね。

Excel-VBAを使えば数分かかる作業がたったの1秒で終了しますよ!