Access VBAでデータ入力フォームを作り、各コントロールを追加するためのデザインビューの使い方:Access VBAで学ぶ初心者のためのデータベース/SQL超入門(2)(1/2 ページ)
Accessを通じて、初心者がリレーショナルデータベースやSQLの基本を学び、データベースを使った簡単なシステムの作り方を習得する本連載。今回は、テーブルを基にデータ入力フォームを作成し、ラベル、テキストボックス、コンボボックス、ボタンリストボックスを追加する手順を解説する。
連載の目的と前回のおさらい
本連載はMicrosoft Access(マイクロソフトアクセス 以下、Access)を使って、リレーショナルデータベースやSQLの基本を学び、データベースを使った簡単なシステムの作り方を習得するものだ。
前回は、Accessとは何か、「テーブル」「レコード」「フィールド」などの基本用語の説明、空のデスクトップデータベースの作成などを学んだ。
今回は、前回作ったテーブルを元に、データ入力フォームを作成し、ラベル、テキストボックス、コンボボックス、ボタンリストボックスを追加して顧客データを入力するフォームにするまでの手順を解説する。
データ入力フォームを作成する
まず、Accessを起動する。Accessのアイコンをクリックして一から起動するのではなく、前回作成した「顧客管理.accdb」をダブルクリックして「顧客管理テーブル」を開くと、簡単で早い。
次に、Accessメニューの「作成」タブから「フォーム デザイン」を選択する(図1)。
「フォーム1」のデザイン画面(格子状の部分)が表示される。作業しやすいように、このスペースを広げよう。
デザイン画面右下の端にマウスを当て、マウスポインター(通常は「↑」のマーク)の形状が「+」に変化したら、フォーム1の右下いっぱいまでドラッグすると、デザイン画面が広がる(図2)。
データ入力フォームにコントロールを配置する
次に、図2の画面上に、「テキストボックス」や「ボタン」などのコントロール(部品)を配置していく。コントロールの一覧は、メニューの「デザイン」タブを見ると分かる。コントロールのアイコン上にマウスポインターを乗せると、ツールチップヒントが表示されて、何ができるかが分かる(図3)。
「顧客管理.accdb」のフィールドでは、以下のコントロールを配置する(表1、図4)。
項目 | 配置するコントロールの種類 | コントロール名 |
---|---|---|
氏名 | テキストボックス | 氏名テキストボックス |
性別 | コンボボックス | 性別コンボボックス |
年齢 | テキストボックス | 年齢テキストボックス |
郵便番号 | テキストボックス | 郵便番号テキストボックス |
住所 | テキストボックス | 住所テキストボックス |
電話 | テキストボックス | 電話テキストボックス |
登録ボタン | ボタン | 登録ボタン |
一覧 | リストボックス | 一覧リストボックス |
各項目の項目名 | ラベル | (「ラベル」の次に数値が順に入る) |
表1 配置する項目とコントロールの種類 |
ラベルを配置する
最初に、各項目のタイトルとなる「ラベル」コントロールを配置する。「デザイン」タブの「コントロール」から「ラベル」を選択し、デザインフォーム上のラベルを置く場所に設置する。
その後、設置したラベルをダブルクリックで選択し、「デザイン」タブの右の方にある「プロパティシート」をクリックすると、デザインフォームの右側に「プロパティシート」の設定枠が表示されるので「書式」タブを選択する。
「標題」に「データ入力フォーム」と入力し、「背景色」は「ハイライト」、「立体表示」は「影付き」、「フォント名」は「Meiryo UI」、「フォントサイズ」は「24」、「文字配置」は「中央」、「フォント太さ」は「極太」と指定する(図5)。
テキストボックスを配置する
次に、「氏名」を入力する「テキストボックス」を配置する。
「コントロール」で「テキストボックス」を選択し、デザインフォーム上の任意の範囲を指定すると「テキスト ボックス ウィザード」が起動するので、「フォント名」と「サイズ」を指定して「次へ」ボタンをクリックする。次の画面では「IME入力モード」を指定して「次へ」をクリックする。次の画面で「テキストボックス名」を入力して「完了」をクリックすると、各項目のプロパティを設定できる。「テキスト ボックス ウィザード」を使用しなくても、「プロパティシート」で後から設定することもできる。
すると図7のように表示される。テキストボックスの左に項目名となるラベルコントロールが自動で配置され、テキストボックスには「非連結」と表示されている。「フォント名」は「Meiryo UI」、「フォントサイズ」は「14」、「IME入力モード」は「オン」、「テキストボックス名」には「氏名テキストボックス」と指定している(図6参照)。
全てのプロパティを設定すると、「氏名テキストボックス」は図7のようになる。
次に、テキストボックスの左に自動で配置された項目名ラベルのプロパティを設定する。
「プロパティシート」の「書式」タブの「標題」に「氏名」と入力し、「フォント名」は「Meiryo UI」、「フォントサイズ」は「14」、「フォント太さ」は「極太」と指定する(図8)。
以下、同じような手順で「性別」「年齢」「住所」「電話番号」のコントロールを配置していく(「性別」については、後の「コンボボックスを配置する」の章も参照)。項目名やコントロールの種類は表1を参照してほしい。
「年齢」と「〒」「電話番号」の「テキストボックスのウィザード」では、「IME入力モード」の「オフ」を指定する。「IME入力モード」を「オン」にすると「かな入力」が可能になり、「オフ」にすると「英数入力」になる。
他は全て「氏名テキストボックス」を指定したときと同じだ。コントロールの左に自動で配置される「項目名」ラベルに、プロパティシートから設定する「書式」タブ→「表題」に表1の項目名を指定していく。
コンボボックスを配置する
「性別」を配置するときには、「コンボボックスウィザード」で「キャンセル」を選択して、別途プロパティシートで設定する。
「キャンセル」するとフォーム画面上に「コンボボックス」が配置され、「テキストボックス」のときのように左側に自動で項目名(この場合はコントロール名)のラベルが表示される。
「書式」タブの「標題」に「性別」と入力し、「フォント名」は「Meiryo UI」、「フォントサイズ」は「14」、「フォント太さ」は「極太」と指定する。
次に「データ」タブを選択し、「値集合ソース」に「男;女」と入力し、「値集合タイプ」は「値リスト」を選択する(図9)。「その他」タブにある「名前」には「性別コンボボックス」と入力する。これがコントロール名となる。
フォームビューでコンボボックスを動かしてみる
図10は、リストボックス以外をフォームに配置したものだ。
フォーム以外のグレーの領域でマウスを右クリックをすると、「フォームビュー」というメニューが表示されるのでクリックする(※)。すると実行画面になるので、「コンボボックス」を選択してみよう。
図11のように「男」と「女」が選択できればOKだ。「デザインビュー」に戻そう。
ボタンを配置する
次はデータを登録するための「ボタン」を配置しよう。
「コントロール」の「ボタン」を選択する。フォーム上にボタンを設置したい場所を選択すると「ボタンウィザード」が起動するが「キャンセル」して、プロパティシートでプロパティを設定する。「書式」タブ内の「標題」に「登録」、「フォント名」に「Meiryo UI」、「フォントサイズ」は「14」、「フォントの太さ」は「極太」を指定する。
次に「その他」タブを選択して「名前」に「登録ボタン」と入力する。全て設定すると図12のようになる。
Copyright © ITmedia, Inc. All Rights Reserved.