Excel VBA ブックを開いたときにユーザーフォームを表示する

スポンサーリンク

ブックを開いた時にユーザーフォームを表示する方法

ブックが開いたときに、ユーザーフォームを表示するには、ThisWorkbook【ディスワークブック】モジュールにワークブックが開いたときに発生するWorkbook_Open【ワークブックオープン】イベントプロシージャーにUserForm【ユーザフォーム】コントロールオブジェクトのShow【ショー】メソッドを使用して、ブックが開いたときにユーザーフォームを表示させます。

ThisWorkbookモジュールの使い方手順

開発タブをクリックします。
「Visual Basic」ボタンをクリックします。



「ThisWorkbook」をクリックします。



ダウンリストボタンをクリックします。



Workbookを選択します。



ダウンリストボタンをクリックします。

「Open」を選択します。

Openイベントのプロシージャが自動で作成されます。

ここにコードを記述します。



Show【ショー】メソッド

ユーザーフォームを表示するには、UserForm【ユーザフォーム】コントロールオブジェクトのShow【ショー】メソッドを使用します。

Show【ショー】メソッドの書式と設定値(引数)の説明

[]内は省略可能です。
オブジェクト.Show[(Modal)]

  • オブジェクト(必須)
    ユーザーフォームコントロールオブジェクトのオブジェクト名を指定します。
  • Modal【モーダル】(省略可能)
    ユーザーフォームの表示状態をFormShowConstants列挙型の定数または、値で指定します。省略した場合は、既定値のvbModalが指定され、ユーザーフォーム以外の操作ができない。モーダル状態でユーザーフォームが開きます。

    定数内容
    vbModal
    【ブイビーモーダル】
    0エクセルの操作をできない状態にして
    ユーザーフォームを開きます。
    vbModeless
    【ブイビーモードレス】
    1エクセルの操作ができる状態で
    ユーザーフォームを開きます。

ブックが開いたときにユーザーフォーム1をモーダルで表示するコード例

Private Sub Workbook_Open()
UserForm1.Show 
End Sub

ブックが開いたときにユーザーフォーム1をモードレスで表示するコード例

Private Sub Workbook_Open()
UserForm1.Show vbModeless
End Sub

StartUpPosition【スタートアップポジション】プロパティ

ユーザーフォームを表示する位置を指定するには、UserForm【ユーザフォーム】コントロールオブジェクトのStartUpPosition【スタートアップポジション】プロパティを使用します。

StartUpPosition【スタートアップポジション】プロパティの書式と設定値の説明

オブジェクト.StartUpPosition = 設定値

  • オブジェクト(必須)
    ユーザーフォームコントロールオブジェクトのオブジェクト名を指定します。
  • 設定値(必須)
    以下の表示場所を表す値を設定します。

    内容
    0Manual 初期値を設定しません。
    1CenterOwner ユーザーフォームが属する項目の中央
    2CenterScreen 画面全体の中央
    3WindowsDefault 画面の左上隅

画面の左上隅にモードレスでユーザーフォームを開くコード例

Private Sub Workbook_Open()
UserForm1.StartUpPosition = 3
UserForm1.Show vbModeless
End Sub

実行結果


指定したポイントにモードレスでユーザーフォームを表示するコード例

StartUpPositionが0の場合は、TopプロパティとLeftプロパティを使用して表示位置をポイント単位で指定できます。

Private Sub Workbook_Open()
 UserForm1.StartUpPosition = 0
 UserForm1.Top = Application.Top + 300
 UserForm1.Left = Application.Left + 700
 UserForm1.Show vbModeless
End Sub

実行結果


以上でブックを開いたときにユーザーフォームを表示する方法の解説を終了します。
ありがとうございました。

スポンサーリンク

関連記事・広告