(3)コンボボックス
複数行の設定されたデータを選ぶこともでき、直接データを書き込むこともできます。数個のデータの中から一つを選択してもらいたい時に使用します。コンボボックスに表示させるデータはVBAで書きます。
図12にあるVBAのリストです
[リスト3]UserForm_Initialize(コンボボックス.xlsm)
Private Sub UserForm_Initialize()
Me.ComboBox1.Clear
Me.ComboBox1.AddItem ("北海道")
Me.ComboBox1.AddItem ("本州")
Me.ComboBox1.AddItem ("四国")
Me.ComboBox1.AddItem ("九州")
Me.ComboBox1.Text = "九州"
End Sub
コンボボックスのデータを設定するには、Initializeイベントハンドラを使います。Initializeイベントハンドラはフォームを表示する前に実行されます。 前にも書きましたが、~イベントといわれるものは、各コントロールに設定されていて、マウスをクリックしたり、そのコントロールがアクティブになったりしたときに発生します。
そして、イベントハンドラが、処理させたいVBAを書き込む場所です。コードブロックの上にあるコンボボックスの左側でコントロールを指定して、右側で各イベントを指定すると、イベントハンドラの骨組みが表示されます。 以下は、作成したコンボボックスを実行した画面です。
図13:コンボボックスの実行 |
(4)チェックボックス
はい/いいえやON/OFFのように二つのどちらかを選ぶ時に使用します。プロパティのCaptionに文章を入れるとフォームに表示されます。ValueにTrueを書くとチェックされた状態になります。
(5)オプションボタン
チェックボックスと同じように、チェックしたか、してないかの二つの状態を選ぶものです。オプションボタンは(6)のフレームと組み合わせて、複数のオプションボタンの中から一つだけチェックしてもらいたい時に使用します。 プロパティのCaptionに文章を入れるとフォームに表示されます。ValueにTrueを書くとチェックされた状態になります。
あまり単独では使用されません。単独の場合、オプションボタンをクリックすることでチェックはできますが、解除することはできません。
(6)フレーム
表示した内容をグループ化したい時に使用します。(5)のオプションボタンを組み合わせてよく使用されます。プロパティのCaptionに文章を入れるとフォームに表示されます
実行すると、フレームの中のオプションボタンはチェックできるのは一つだけになります。 以下は、作成したフレームにオプションボタンをセットして実行した画面です。
図17:フレームの実行 |