プログラムミングへの一歩(その9)
●STEP9 グループ分けの可能な住所録の作成
(実践的な設計手法編3)
[4] 関連付機能の設計補足その1
前回行なった関連付機能設計の補足としてフォームの作り方の説明から行ないます。それではまず、Excelを起動して
Visual Basic Editor を起動してください。

Visual Basic Editor 側の”挿入”メニューから”ユーザーフォーム”を選びます。

すると下のようなウインドウが現れます。

左側の”ツールボックス”ウインドウには、フォームに配置するコントロールと呼ばれるオブジェクトが表示されています。UserForm1と書かれたウインドウは、土台となるフォームです。ここに左側のコントロールを配置してゆきます。
配置方法は次のとおりです。
(1) 右側のツールボックスから配置するコントロールを左クリックで選びます。
(2)
フォーム上にマウスを移動して配置する位置の左上を左クリックし押したままの状態で大きさを決定します。
以上でコントロールの配置が完了します。では実際にラベルと呼ばれるコントロールを配置してみましょう。ツールボックス上
の部分をクリックします。するとマウスカーソルが十字と”A”の組合されたカーソルになりますのでフォーム上にマウスカーソルと移動しラベルの左上位置をクリックします。マウス左ボタンを押したままの状態でラベルの右下を選んで左ボタンを離すと次のようになります。

ここでプロパティウインドウをクリックしてください。もしもプロパティウインドウが表示されていない場合は、”表示(V)”メニューの”プロパティウインドウ”をクリックします。

プロパティウインドウが表示されたら”Caption”と書かれた項目の右側をクリックすると編集可能な状態になりますので”Label1”を”名 前”と書換えてください。

すると左側にあるフォームウインドウのラベルが”名 前”に書換わります。この要領でラベルを登録して以下のように配置してください。

次にテキストボックスとリストボックスというコントロールを配置しますが、このコントロールの配置については、プロパティウインドウを編集する必要はありませんのでテキストボックスは、
のボタンでリストボックスは、
のボタンで以下のように配置して下さい。

最後にボタンを3つ配置します。ボタンコントロールの配置方法は、ラベルと同様にCaptionプロパティの編集が必要です。ボタンコントロールの配置とCaptionをそれぞれ以下のようにしてください。

次に今まで配置したコントロールの配置を微調整するためにマウスカーソルを名前と書かれたラベルコントロールの真下にある黒点辺りに合わせて左クリックしボタンを押したまま移動すると点線で四角が現れます。その四角が名前の行に配置されているコントロール全てにかぶるようにマウスを動かして左ボタンを放すと名前の行の全てのコントロールが選択されますので、選択されたコントロールの上で右クリックします。すると以下のようなメニューが表示されます。

ここで、上の絵のように”整列(A)”以下の”中央(M)”を選ぶと”名 前”ラベルを中心に整列します。これと同様に”グループ名”ラベルの行も整列させて下さい。
これでコントロールの配置は終りです。
次に前回行なったプログラムの設計内容についてまとめると以下のようになります。
(1) 人の名前を得る。
(1-1) 手入力による入力枠を準備する。
(1-2) 既存データを選択する手段を準備する。
(1-3)
入力された名前が既存データでない場合は、そのデータを個人データに登録する。(氏名のみ登録する。)
(2) 人が所属するグループを得る。
(2-1) 手入力による入力枠を準備する。
(2-2) 既存データを選択する手段を準備する。
(2-3)
入力されたグループが既存データでない場合は、そのデータをグループデータに登録する。(グループ名のみ登録する。)
(2-4)
この人が所属するグループとして既に登録されている場合は、この処理を無効にする。
(3) その対でデータをワークシートに記録する。
これと以下のフォームを見比べてみてください。

一番上のテキストボックスが(1-1)・(1-3)に対応し”名前の選択”ボタンが(1-2)に対応しています。しかもダイアログで行なう操作は、どの部分から操作されるかが分からないので前回書いた手順の順序には、関係ないことが分かります。
とするとどのようなきっかけでプログラムを動作させればよいかというと”名前の選択”ボタンを押した時や名前の入力が完了した時、等にプログラムが動作します。このようなきっかけをイベントと言います。
ちょっとイベントの説明が短かったかもしれませんが今回はここまでとして、次回は、それぞれのイベントに対する詳細なプログラムの検討に入ります。
その8に戻る TOPページへ その10へ進む 専門用語のページへ
