エクセルの入力作業を効率的に素早く終わらせようと思って、調べていたらたどり着いたVBAのユーザーフォームではありませんか?
そしてこのユーザーフォームを使いこなすことができれば、面倒な入力作業やデータ集計などがあっという間に終わるので、説明書きが文字列としてユーザーフォームのタイトルや説明書きに使用するラベルの設定や使い方に慣れておきましょう。
またラベル自体もセルの値で変化することも、色を変えることも可能なので設定次第でタダの文字列じゃ終わりませんよ。
ちなみにユーザーフォームって?何?または、オリジナル入力フォームについては下記をご覧くださいませ、このページはこちらの内容の続きになっています。
VBAのラベル(Label)の役割とプロパティ設定
”ユーザーフォームでオリジナル入力画面を作る”でもお話ししましたが、ラベルはテキストボックスの説明書きなどで使用頻度が高いパーツの事です。
この画像では、ラベルの書体を初期設定の「MS UI Gothic」から「HGP明朝E」に変更して、一部文字色を赤色に変更しています。
ラベルの基本的な使い方は、下記のように住所録入力フォームを作成した時にテキストボックスの役割を伝える説明書きとして使用することが多いです。
ラベルのコントロールプロパティ
Visual Basic Editor(VBE)画面の左下に英語で書かれている部分が、ラベルの各種設定が可能となるプロパティです。
ラベルを使う時は必ず下記3つの項目をプロパティで設定しています。
- Caption
- Font
- Text Align
それぞれ「表示名」「文字の書式設定」「文字の表示位置(左右)」で、順にご説明します。
この3つはラベルの設定の基本なのでぜひマスターしてください。
Captionはラベル自体の表示名を変更する
初期設定ではLabel1をユーザーフォーム上に配置すると自動的にラベル名(Caption)は「Label1」、2つ目にラベルを配置すれば「Label2」となります。
先ほどの住所録の入力フォームの画像の一番左上が「顧客番号」になっていますが、初期設定は「Label1」です。
ラベル名が顧客番号になっているので、隣のテキストボックスに番号を入力するんのだと分かりますが、Label1じゃわからないので、一般的に文字列として使用します。
変更方法はとても簡単で、ラベルプロパティの画像に「Caption」という項目があり、右側に「Label1」となっています。
表示したい文字に変更するには、この「Label1」の部分をクリックすると変更できるので、お好みの文字に変更するだけで完成します。
Fontは好みの文字書体や大きさ変更で見栄えを良くする
テキストボックスと同様にラベル名の文字がどのように見えるかを設定するFontで、初期設定(デフォルト)では「MS UI Gothic」(ゴシック体)に設定されています。
お好みの文字に変更するには、ラベルのプロパティに「Font」があります。
このFontの右側にMS UI Gothicとありますので、ここをクリックする右側に…という枠が現れてクリックできるようになります。
クリックすると下記のようなフォント画面が表示されますので、お好みの書体と文字サイズを選ぶことができます。
最後にOKボタンを押せば、ラベル自体の文字書体と大きさが設定されますが、あくまでもユーザーフォームのラベル自体の文字書体と大きさなので、コマンドボタンにセルに転記させるようにしても、ワークシート上の文字書体に反映されるわけではありません。
せっかくのオリジナル入力フォームなので、テキストぼっくの設定同様に文字書体や大きさは自分好みにしたいですよね。
より詳しく下記にまとめてありますので、ここでは省略します。
Text Alignは文字の表示位置の設定
Fontと同じく、ラベル名の枠内での表示位置の設定ができ、初期設定(デフォルト)では「Text Align Left」左寄せに設定されています。
お好みの表示位置に設定するには、テキストボックスのプロパティに「Text Align」があります。
このText Alignの右側に1-fmTextAlignLeftとありますので、ここをクリックする右側に▼という枠が現れてクリックできるようになり、下記3つから選ぶことができるようになります。
- 1-fmTextAlignLeft(左寄せ)
- 2-fmTextAlignCenter(中央寄せ)
- 3-fmTextAlignRight(右寄せ)
変更手順を画像と一緒に詳しく下記に記載していますので、設定が不安な方は下記をご覧ください。
ちなみにこれら「IME Mode」「Font」「TextAlign」はテキストボックスの設定だけではなく、ユーザーフォーム・ラベル・コマンドボタンなども同じように設定できるので、ユーザーフォームの基本でもあるので慣れておいた方がいいですよ!
エクセルVBAとかマクロとかプログラミングっていう単語を聞くと難しく感じてしまいますが、エクセル関数と同じく少しずつ、コツコツやれば出来るようになりますよ!安心してね。
ForeColorでラベルの文字色を設定する
ユーザーフォーム自体やラベルを含めて配置できるパーツの文字色は、初期設定(デフォルト)では「黒色」に設定されています。
ラベルの主な役割は文字列で説明書きなどで使うことが多いので、ごく一般的でもある初期設定の「黒色」で問題ないのですが、場合によっては目立たせることが重要な時があり、注意事項なんて赤文字の方が分かりやすいですよね。
ラベルの文字色もプロパティでも設定できるので、下記に画像付きで手順をまとめていますのでご覧くださいませ。
BackColorでラベルの背景色を設定する
ユーザーフォーム自体やラベルを含めて配置できるパーツの背景色は、初期設定(デフォルト)では「無し」に設定されています。
「無し」と言っても、灰色っぽく色としては「&H8000000F」が設定されています。
これもラベルの文字色と同様にラベルのプロパティより設定ができますので、下記に画像付きで手順をまとめていますのでご覧くださいませ。
SpecialEffectでラベルを立体的に見せる
機能的に格段にどころか全く向上することは無く、目立たたせるというかお好みというか、見た目だけなのですが、味気ないラベルをかっこよくすること?ができます。
これもラベルのプロパティ「SpecialEffect」より設定でき、初期設定を含めて全部で5種類から選ぶことができるので、余裕があったらユーザーフォームのラベルを立体的に設定して見ても面白いと思います。
ユーザーフォームでオリジナルフォーム作ろう
エクセルの作業時間を短縮して効率よく作業を可能にする「ユーザーフォーム」を使いこなすには、基本を押さえておきましょう。
1日400人ぐらいの方が見ていただいている意外と人気ページなんです。
文字を入力するのに絶対使うTextBox
ユーザーフォームにテキストボックスを使わないで済むのは、確認画面ぐらいかな?
テキストボックスとセルをリンクさせる様々な方法を組み合わせれば、作業時間はあっという間に短縮できます。
文字列だけじゃない!Labelもクリックできるので可能性大
ラベルといえばテキストボックスの説明として文字列で表示させるのが、基本の使い方ですがクリックするとプログラムを実行させることもできるのです。
工夫次第でできることは無限大に広がります。
どんなVBAコードをコマンドボタンに記述しますか?
ボタンをクリックすると記述したプログラムが作動して、繰り返し作業や手間がかかったことが一瞬で完了させることができます。
あんなこともこんなこともできちゃいますよ。
ご覧いただきありがとうございます。
ブログランキングに登録しています。
少しでもお役に立てれば幸いで、参考になったようでしたら応援よろしくお願いします。
エクセルの勉強お疲れ様です。ちょっとひと休みしませんか?