スポンサーリンク

ユーザーフォームを閉じて別のユーザーフォームを開く方法

パソコン難しいExcel-VBA
スポンサーリンク

ユーザーフォームの表示

ユーザーフォームを作ってもそのままではエクセル自体に表示させることはできません。

作ったユーザーフォームを開く方法は2つあります。

  1. エクセルを開いた時に自動的にユーザーフォームを表示させる
  2. コマンドボタンにユーザーフォームを開くVBAコードを記述する

エクセルを開いた時に自動表示

この方法でユーザーフォームを開くようにする時は、メニュー画面を作った時に設定することが多くなります。

波乗りアヒル
波乗りアヒル

こんな感じです。詳しくは重複するのでここでは省略します。

コマンドボタンにユーザーフォームを開くVBAコードを記述

この方法が一番使う方法で、下記のようにVBAコードを記述します。

VBAコード

Private Sub CommandButton1_Click()
UserForm1.Show
End Sub

解説
  1. コマンドボタン1を押したら
  2. ユーザーフォーム1を表示する
  3. マクロ記述終了

ユーザーフォームを閉じる方法

ユーザーフォームを閉じるには、ユーザーフォーム自体の右上の「✖」ボタンを押すか、「コマンドボタン」にユーザーフォームを閉じるVBAコードを記述します。

VBAコード

Private Sub CommandButton1_Click()
Unload UserForm1
End Sub

解説
意図しない操作を防ぐために

「✖」ボタンを押されてしまうとユーザーフォームが閉じてしまい、次の操作ができなくなる恐れがあるので、「✖」ボタンを使用不可に設定することができます。

これにより、「コマンドボタンに」VBAコードを記述してフォームの切り替えができるようにします。

スポンサーリンク

ユーザーフォームの切り替え

それでは、実際に一番多くやっているユーザーフォームの表示と閉じるを同時に行う「切り替え」をやってみましょう。

波乗りアヒル
波乗りアヒル

VBAコード記述の流れは、現在表示のフォームを閉じて、別のフォームを表示するってことですね。

Excel-VBAもくじへ

コメント