環境:Office365 Windows10
VBAユーザーフォームのボタンの機能と使い方:初級編
様々なサイトでVBAの解説はされていると思いますが、ところどころ端折っていたり、専門用語が書いてあったりで結局わからない。。という人の為の解説記事です。
ユーザーフォームのボタンについて超丁寧に解説しますので、初心者の方はぜひ全部読んでみてください。
ボタンについての前置き:
VBAのユーザーフォームは、ユーザーと対話するための機能です。ユーザーフォーム上のボタンは、さまざまなアクションや機能を実行するための重要な部品の一つです。この記事では、VBAユーザーフォーム上のボタンの基本的な使い方から、より実践的な機能までを解説します。
ではボタン設置の為の基本的な前準備はこちらを参照してください。
本日のサンプルはこちら
![](https://www.white-gush-blog.com/wp-content/uploads/2023/06/9bf1c3a7f2e144ef71e733c79a552e76.png)
ボタンの基本的な作成方法
![](https://www.white-gush-blog.com/wp-content/uploads/2023/06/2f1a27c2fe301fcf3e1733525b00023d.png)
画像内の「トグルボタン」を選択し、フォーム内に任意の大きさで作成できます。
![](https://www.white-gush-blog.com/wp-content/uploads/2023/06/7f5792bfdca7fed8ea473c787107e411.png)
ボタンのサイズや位置を調整する方法
![](https://www.white-gush-blog.com/wp-content/uploads/2023/06/3db2f3e62449ff5d9b2a3873ca4f91d5.png)
スクリーンショットだとカーソルが消えていますが、ボタンをクリックして、選択状態にした後の右下の白い□を引っ張っています。これで大きくしたり小さくしたり出来ます。
ボタン内のテキスト変更
![](https://www.white-gush-blog.com/wp-content/uploads/2023/06/a76f948ebe4f49115616008e8ea59fd4.png)
ボタンをクリックして選択状態にしたあとボタンの文字部分をワンクリックします。
間違えやすいですが、ワンクリックです。ダブルクリックしたらダメですよ!
それではテキストの中身を変更して「登録」にします。
大きさも少し小さくします。
![](https://www.white-gush-blog.com/wp-content/uploads/2023/06/796497f355c6a07593ba29841cb4a465-1.png)
クリックイベントの作成
ボタンがクリックされたときに実行する処理を書いていきます。
ボタンをダブルクリックします。
するとプログラムを書く場所(エディター)に画面が切り替わります。
![](https://www.white-gush-blog.com/wp-content/uploads/2023/06/439c63d8ad79158d2fea09c27407f2cd.png)
画像に表示されている
Private Sub ToggleButton1_Click()
End Sub
これらは自動で入力されます。
解説すると、
Private Sub ToggleButton1_Click()
Private Sub :ここからプログラムの処理が始まります。ということ
ToggleButton1_Click():ToggleButton1=設置したボタンの正式名称です。※プロパティで確認できます。プロパティについてはこちら「オブジェクト名」が正式名称の部分です。
![](https://www.white-gush-blog.com/wp-content/uploads/2023/06/3ce6bff090e5a09b0aec1e7583bb229e.png)
ToggleButton1_Click():Click=その名の通りクリックしたら
つまりボタンをクリックしたら処理を開始します。ということです。
では処理を書いていきます。
![](https://www.white-gush-blog.com/wp-content/uploads/2023/06/fe90b7b4b2776c1da3958e580c1c8cef.png)
選択状態のシートのCells(1,1)に「ボタンを押したよ!」を入力します。
Cellsがわからないときはこちらを参照してください。
では実行していきます。
実行方法がわからない場合はこちらを参照してください。
実行しました。
![](https://www.white-gush-blog.com/wp-content/uploads/2023/06/b768d8f8d7a7cad8865da9396200eb2c-1024x524.png)
UserForm1が表示されましたので、「登録」ボタンをクリックします。
![](https://www.white-gush-blog.com/wp-content/uploads/2023/06/588b193b45261dbbf4c39ee439829043-1024x485.png)
処理が実行されました。
ちょっとした応用
他にも例えば
![](https://www.white-gush-blog.com/wp-content/uploads/2023/06/71554bb9da5861dcb8738bd06f7ca357.png)
このようなプログラムを書けば、テキストボックスの内容をExcelに入力させることも可能です。
![](https://www.white-gush-blog.com/wp-content/uploads/2023/06/46aad3df3931abf3e32b504b891260a4-1024x473.png)
これに最終行を取得して最終行にデータを入力する方法等を掛け合わせると入力フォームが簡単に作成することができます。
最終行の取得方法の解説はこちら
結論
VBAのユーザーフォーム上のボタンは、ユーザーへの問いかけやユーザーの答えを得るのに重要な役割を果たします。今後VBAを使ってシステム開発などを検討している場合は絶対に覚えておきましょう
コメント