【エクセルVBA】ユーザーフォームに『閉じる』ボタンを追加する
ユーザーフォームに『閉じる』ボタンを追加し、ユーザーフォームを閉じるところまで。
ユーザーフォームの作り方は以下の記事を参考に。
ユーザーフォームに『閉じる』ボタンを追加する。
ツールボックスから『コマンドボタン』をクリックする。
ユーザーフォーム上でクリックした後、ドラッグしボタンサイズを決め配置する。
コマンドボタンの表示『CommandButton』を『閉じる』にする。
画面左下の『プロパティ -CommandButton1』の下部にある『Caption』の右欄が『CommandButton』になっているのでここに『閉じる』を入力する。
ボタンにマクロを追加する。
作成した『閉じる』ボタンをクリックする。
『閉じるボタンを押したとき』に実行されるプログラムを記述する画面に移動する。
『Private Sub CommandButton1_Click()』と『End Sub』の間にコードを記述していく。
※『Unload』の前の空白は『TAB』キーを押す。
保存し、このページを閉じる。
あとは、実行テストしてみる。
ユーザーフォームを開くボタンを作成したエクセルシートを開く。
ボタンを押し、ユーザーフォームを開く。
ユーザーフォームにある『閉じる』ボタンを押す。
ユーザーフォームが閉じる。
完了
【エクセルVBA】シート上のボタンを押してユーザーフォームを表示する
シート上にボタンを配置して、そのボタンをクリックしてユーザーフォームを表示させる。
シート上にボタンを配置する。
上部のバーから『開発』タブをクリックし、表示された『挿入』をクリックする。
『フォームコントロール』が表示されるので、『ボタン(フォームコントロール)』をクリックする。
カーソルが細い十字になるので任意の場所で左クリックし続け、カーソルを移動させる。
細い四角の枠が表示されるので、任意の大きさになる位置で、左クリックを離す。
『マクロの登録』ウィンドウが表示される。
マクロ名が『ボタン1_Click』になっており、ここで名前を付けられる。
今回はこのままで。
『OK』をクリックする。
シート上にボタンが表示される。
この状態のボタンをクリックしても、以下のような表示がでてマクロが使用できないため『マクロ有効ブック』で保存する。
上部のバーから『ファイル』をクリックする。
名前を付けて保存をクリックする。
保存するフォルダを選択するウィンドウがでたら、『ファイルの種類』の『Excelブック(*.xlsx)』をクリックする。
保存形式の一覧が表示されるので、この中から『Excelマクロ有効ブック(*.xlsm)』を選択し、任意のファイル名を付けて保存する。
これでマクロを使用することができる。
シートの画面に戻るのでボタンにマクロを登録する。
ボタンをクリックし、『マクロの登録』をクリックする。
マクロの登録ウィンドウが表示される。
『新規登録』をクリックする。
Visual Basic for Applicationの画面が開かれる。
『Sub ボタン1_Click()』と『End Sub』の間の行にユーザーフォームを表示するコードを記述する。
『(ユーザーフォーム名).Show』でユーザーフォームを表示できる。
保存する。
ユーザーフォームを表示させる準備が整ったので、ボタンを配置したシートに戻り、ボタンを押してみる。
『Alt』キーと『F11』キーを同時押しする。
シートに戻ったら、ボタンをクリックする。
すると
シート上にユーザーフォームが表示される。
ユーザーフォームを閉じるときはユーザーフォームの右上の×をクリックする。
【エクセルVBA】ユーザーフォームの出し方
エクセルのシート画面からユーザーフォームを作成するところまで。
エクセルを開き空白のブックを作成した画面↓
ここからVisual Basic for Applicationsを開く。
『Alt 』キーと『 F11』キー同時押しする。
もしくは
画面上部の『開発』タブをクリックし、表示された『Visual Basic』をクリックする。
Visual Basic for applicationsが開かれる。
この画面からユーザーフォームを挿入していく。
上部のバーから『挿入』をクリックし、『ユーザーフォーム』をクリックする。
ユーザーフォームが表示される。↓
緑色の▷ボタンを押すと、エクセルシートの画面に戻りユーザーフォームが表示される。
ユーザーフォームが表示される。↓
ユーザーフォームの右上の×をクリックすると、Visual Basicの画面に戻る。
【エクセルVBA】文字サイズの変更
コード↓↓↓
【エクセルVBA】行の高さを変える
行の高さを変更する
コード↓↓↓
マクロ実行↓↓↓
【エクセルVBA】列の幅を変える
列の幅を変更する
コード↓↓↓
マクロ実行↓↓↓
【エクセルVBA】メッセージの表示
メッセージを表示させる
コード↓↓↓