コンボボックス、又はリストボックスの説明

今回は学生名の書込みにコンボボックス、又はリストボックスを使用致します。
従って、学生名使用したプログラム中のテキストボックス3に関する行にアポストロフィを付けプログラムの働きを停止させておきましょう。
1.「書込み」のコマンドボタンのプロシージャに以下のように追記します。
図2
2.「入力開始」ボタンのプロシージャにも同様に追記します。
図3
【参考】この「入力開始」ボタンのプロシージャ表示のさせ方:
 エクセルに戻り入力開始ボタン右クリックしてメニューの「コードの表示」をクリックするとこのプロシージャを表示させることができます。
又はこのプロシージャは「Module1」作成されていましたのでプロジェクトの「標準モジュール」フォルダーの「Module1」をダブルクリックする と表示させることができます。
3.テキストボックス3、及びリストボックスのプロパティ「TabStop」を「False」にします。
4.書込み修正が終わればエクセルに戻り動きを確認してみましょう。
 コンボボックスで学生名を選択を行なった後、「Enter」キーを押すと、 TabIndexが次の番号(数学のテキストボックス)にカーソルが移動します。
5.次にリストボックスの場合について見ましょう。
1)前述で書いた「ComboBox1」を「ListBox1」と書き換えましょう。
2)今回はコンボボックスは使わないため、コンボボックスのプロパティ「TabStop」を「False」とし、リストボックスを「True」とします。
3)エクセルで動作確認してみましょう。コンボボックスでは、学生名を選択して「Enter」キーを押すとカーソルは次のTabInexの番号に移動しま し たが、リストボックスでは移動しません。
自 動でカーソルが移動しなくてもマウスで移動させれば良いので何も問題無いとパソコンに慣れた方たちは思われるかもしれませんが私のようにパソコンに不慣れ な者は、できるだけマウスの操作などを最小限にしたいためリストボックスで学生名を選択すると次のタブインデックスの番号に自動的に移動させましょう。そ のため「SetFocus」を使いカーソル(タブ)を移動させることと致しましょ う。
4)リストボックス1のプロシージャに「SetFocus」で数学のテキストボックス4に移動させます。
先ずこのプロシージャを表示させ、プログラムしましょう。
①リストボックスを右クリックしてメニューの「コードの表示」をクリックします。
図4
②下図のようにリストボックスをクリックした場合のプロシージャが表示されます。
図5
このプロシージャ内の名称は下図の通りです。図6
プロシージャボックスの右端の▼をクリックするとリストボックス1のいろいろなイベントが表示されます。
このイベントを選択することにより、そのイベントが発生した場合のプロシージャを作成することができます。
図7
今回は「クリックした場合に処理を行なわせたいために「クリック」のイベントに下図のようにプログラムを書きます。
図8
【参考】
これらイベントが多数あって大変そうに見えますが、「Change」、「Click」、「Enter」、「Exit」の4つがあればほとんど対応が可能で す。
それぞれの働きについては追って説明して行きます。
5)エクセルに戻り動きを確認してみましょう。
図9
コンボボックス、及びリストボックスの説明を行なってきましたが、次ページから第二の入力作業の流れ、即ち好きなときに、好きな科目の採点結果の入力が行 えるようにプログラムに修正して行きます。
   
次ページへ

サイドバータイトル
inserted by FC2 system