Excel VBAスタンダード 公式テキスト 9章 UserForm
9-1 UserFormとは
- VBAで自由に設計できるダイアログボックス
- 設計、コーディング、表示という3つの作業を行う
設計
- 挿入 -> ユーザーフォーム
コーディング
- 個々の部品、ボタンごとにプロシージャを記述する
表示
- いつものF5キーで表示
UserForm1.show vbModeless
とすると、UserFormを表示している状態でもセルの操作が可能になる- 引数を付けないか、明示的に
vbModal
とするとUserForm表示時にワークシートやセルの操作が出来なくなる
9-2 よく使うコントロール
- ラベル
- 文字列を表示するためのコントロール
Label.Caption = 変数
とする事で、ラベルの中身を変える事が出来る
- コマンドボタン
- ユーザーがクリックする事で何らかの動作を実行させるボタン
- プロパティウィンドウの
Caption
の文字列をかえると、ボタンの表面の文字がかわる
- テキストボックス
- プロパティウィンドウの
Multiline
をtrue
にする事で複数行の入力が可能になる
- プロパティウィンドウの
- リストボックス
AddItem
メソッドでリストボックスにデータを追加する- 選択したデータはListBoxコントロールの
Text
プロパティで取得 - 何番目のデータが選択されているかは
ListIndex
で取得
- コンボボックス
- リストボックスとだいたい同じ
- チェックボックス
True
かFalse
で返す- 数が多くなってきたら、
Controls
コレクションでコードの簡素化が可能
- オプションボタン
True
かFalse
で返す- チェックボックスと同様、
Controls
コレクションでコードの簡素化が可能
- イメージ
- 画像を表示するコントロール
PictureSizeMode
プロパティで拡大縮小、縦横比の調整を行う
9-3 UserFormのイベント
Initialize
イベント- UserFormの表示前に実行される
QueryClose
イベント- UserFormを閉じようとしたときに発生する
- ウィンドウ右上の「閉じるボタン」や、
Unload
ボタンで閉じたときの挙動を設定できる