効率化からプライベートの時間を創る







VBAのユーザーフォームで表示や閉じるボタンを作る方法

WRITER
 
VBA.ユーザーフォームの表示
この記事を書いている人 - WRITER -
Excel歴15年。基本操作から関数、マクロ、VBAまで仕事で便利だったことを中心に書いています。お仕事の時間短縮にお役に立てれば幸いです。
詳しいプロフィールはこちら

ExcelのVBAを作成していると作りたくなる「ユーザーフォーム」ですが、まず始めに表示させる方法と閉じる方法が分からないと進めれないですよね。
そこでこの記事ではVBAでユーザーフォームの表示や閉じる方法を紹介します。

ユーザーフォームを開く際にも2つのコード例がありますので、それぞれ違いも含めて紹介します。

VBAのユーザーフォームを表示させる方法

ユーザーフォームを作成する手順からコードまで紹介します。

まずはAlt+11で入力画面を呼び出し、「挿入」タブからユーザーフォームを選択します。

VBA.ユーザーフォームの表示1

続いてボタンを設置していきましょう。

コントロールの中にあるコマンドボタンを選択し、配置したい位置に左上から右下にドラッグします。

(ボタンの大きさは後から編集可能)
VBA.ユーザーフォームの表示2
次はボタンの表示される名称を編集します。
ボタンを右クリックして「プロパティ」を選択し、Captionの部分を「閉じる」と入力します。

VBA.ユーザーフォームの表示3

 

VBA.ユーザーフォームの表示4

続いてユーザーフォームを開くためのコードを入力します。

まずは「挿入」タブから「標準モジュール」を選択し、以下のように入力します。

VBA.ユーザーフォームの表示5

 

 

VBA.ユーザーフォームの表示6

Alt+11でExcelのsheetの画面に変わりますので、「開発」タブの「挿入」からボタンを設置します。


配置したいセルをクリックしたらマクロの登録画面が開きますので、先ほどのマクロを選択しましょう。

VBA.ユーザーフォームの表示8

ボタンを表示して、実際にユーザーフォームが開いたらOKです。

VBA.ユーザーフォームの表示9

 

モードレスで表示させたまま他の操作も出来る

UserForm1.Showの場合、ユーザーフォームが表示されている間はセルの編集や入力ができない状態です。

しかし、モードレスの設定をすることでユーザーフォームを表示した場合でも操作することが可能です。

VBA.ユーザーフォームの表示10

 

入力は以下のようになります。

 

memo

ShowのあとにスペースとvbModelessを入力するだけでモードレスになる

 

閉じるボタンのコード作成

次はコードを入力します。

Alt+11で入力画面を表示させ、ユーザーフォームをクリックします。

続いて「閉じる」のボタンをダブルクリックします。

VBA.ユーザーフォームの表示11

以下のように入力しましょう。

 

 

VBA.ユーザーフォームの表示12

 

Unload UserForm1の入力はUnload MeでもOK

 

閉じるボタンをダブルクリックしましょう。

Excelのsheetの画面に戻って、実際に閉じるボタンが動作するか確認してみましょう。

VBA.ユーザーフォームの表示13

 

 

まとめ

今回はVBAでユーザーフォームの表示や閉じる方法について紹介しました。

開く、閉じるはユーザーフォームの中でも基本的な部分ですが、実はモードレスについては知らない方も多くいます。

Excelのsheetによってもモードレスにした方が良い場合とそうでない場合があると思いますので、あなたの作業で使いやすいようにアレンジしてみましょう。

Excelの機能を使いこなすと、仕事の効率化から大きな時間短縮に繋がります。

仕事術のスキルが増えるとプライベートの時間を時間を増やすことができますので、当サイトで得た知識を是非活用していきましょう。
以下のExcel記事もおすすめです。

 

この記事を書いている人 - WRITER -
Excel歴15年。基本操作から関数、マクロ、VBAまで仕事で便利だったことを中心に書いています。お仕事の時間短縮にお役に立てれば幸いです。
詳しいプロフィールはこちら









- Comments -

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

Copyright© Excel仕事術ブログ , 2024 All Rights Reserved.