連載
» 2015年06月29日 05時00分 UPDATE

Access VBAで学ぶ初心者のためのデータベース/SQL超入門(2):Access VBAでデータ入力フォームを作り、各コントロールを追加するためのデザインビューの使い方 (1/2)

Accessを通じて、初心者がリレーショナルデータベースやSQLの基本を学び、データベースを使った簡単なシステムの作り方を習得する本連載。今回は、テーブルを基にデータ入力フォームを作成し、ラベル、テキストボックス、コンボボックス、ボタンリストボックスを追加する手順を解説する。

[薬師寺国安,PROJECT KySS]
title_access.gif
Access VBAで学ぶ初心者のためのデータベース/SQL超入門

連載目次

連載の目的と前回のおさらい

 本連載はMicrosoft Access(マイクロソフトアクセス 以下、Access)を使って、リレーショナルデータベースやSQLの基本を学び、データベースを使った簡単なシステムの作り方を習得するものだ。

 前回は、Accessとは何か、「テーブル」「レコード」「フィールド」などの基本用語の説明、空のデスクトップデータベースの作成などを学んだ

 今回は、前回作ったテーブルを元に、データ入力フォームを作成し、ラベル、テキストボックス、コンボボックス、ボタンリストボックスを追加して顧客データを入力するフォームにするまでの手順を解説する。

データ入力フォームを作成する

 まず、Accessを起動する。Accessのアイコンをクリックして一から起動するのではなく、前回作成した「顧客管理.accdb」をダブルクリックして「顧客管理テーブル」を開くと、簡単で早い。

 次に、Accessメニューの「作成」タブから「フォーム デザイン」を選択する(図1)。

accessvba2_zu_01.png 図1 「作成」タブから「フォーム デザイン」を選択する(クリックすると拡大画像を表示します。以降も同じ)

 「フォーム1」のデザイン画面(格子状の部分)が表示される。作業しやすいように、このスペースを広げよう。

 デザイン画面右下の端にマウスを当て、マウスポインター(通常は「↑」のマーク)の形状が「+」に変化したら、フォーム1の右下いっぱいまでドラッグすると、デザイン画面が広がる(図2)。

accessvba2_zu_02.png 図2 デザイン画面をドラッグして広げる

データ入力フォームにコントロールを配置する

 次に、図2の画面上に、「テキストボックス」や「ボタン」などのコントロール(部品)を配置していく。コントロールの一覧は、メニューの「デザイン」タブを見ると分かる。コントロールのアイコン上にマウスポインターを乗せると、ツールチップヒントが表示されて、何ができるかが分かる(図3)。

accessvba2_zu_03.png 図3 コントロール一覧

 「顧客管理.accdb」のフィールドでは、以下のコントロールを配置する(表1、図4)。

項目 配置するコントロールの種類 コントロール名
氏名 テキストボックス 氏名テキストボックス
性別 コンボボックス 性別コンボボックス
年齢 テキストボックス 年齢テキストボックス
郵便番号 テキストボックス 郵便番号テキストボックス
住所 テキストボックス 住所テキストボックス
電話 テキストボックス 電話テキストボックス
登録ボタン ボタン 登録ボタン
一覧 リストボックス 一覧リストボックス
各項目の項目名 ラベル (「ラベル」の次に数値が順に入る)
表1 配置する項目とコントロールの種類
accessvba2_zu_18.png 図4 各コントロールの配置例

ラベルを配置する

 最初に、各項目のタイトルとなる「ラベル」コントロールを配置する。「デザイン」タブの「コントロール」から「ラベル」を選択し、デザインフォーム上のラベルを置く場所に設置する。

 その後、設置したラベルをダブルクリックで選択し、「デザイン」タブの右の方にある「プロパティシート」をクリックすると、デザインフォームの右側に「プロパティシート」の設定枠が表示されるので「書式」タブを選択する。

 「標題」に「データ入力フォーム」と入力し、「背景色」は「ハイライト」、「立体表示」は「影付き」、「フォント名」は「Meiryo UI」、「フォントサイズ」は「24」、「文字配置」は「中央」、「フォント太さ」は「極太」と指定する(図5)。

accessvba2_zu_04.png 図5 ラベルコントロールを配置し、各プロパティを設定した

テキストボックスを配置する

 次に、「氏名」を入力する「テキストボックス」を配置する。

 「コントロール」で「テキストボックス」を選択し、デザインフォーム上の任意の範囲を指定すると「テキスト ボックス ウィザード」が起動するので、「フォント名」と「サイズ」を指定して「次へ」ボタンをクリックする。次の画面では「IME入力モード」を指定して「次へ」をクリックする。次の画面で「テキストボックス名」を入力して「完了」をクリックすると、各項目のプロパティを設定できる。「テキスト ボックス ウィザード」を使用しなくても、「プロパティシート」で後から設定することもできる。

accessvba2_zu_05.png 図6 「テキスト ボックス ウィザード」で各プロパティを設定する

 すると図7のように表示される。テキストボックスの左に項目名となるラベルコントロールが自動で配置され、テキストボックスには「非連結」と表示されている。「フォント名」は「Meiryo UI」、「フォントサイズ」は「14」、「IME入力モード」は「オン」、「テキストボックス名」には「氏名テキストボックス」と指定している(図6参照)。

※ここで指定している「氏名テキストボックス」は、現時点でコントロール名であり、左側に自動で配置されたラベルに表示される文字列でもある。コントロール名は、後の連載でVBAのソースコードを書く際に、他のコントロールと区別するための名称だ。後述するが、左側に自動で配置されたラベルに表示される文字列つまり、項目名は変更する。

 全てのプロパティを設定すると、「氏名テキストボックス」は図7のようになる。

accessvba2_zu_06.png 図7 各プロパティを設定した「テキストボックス」

 次に、テキストボックスの左に自動で配置された項目名ラベルのプロパティを設定する。

 「プロパティシート」の「書式」タブの「標題」に「氏名」と入力し、「フォント名」は「Meiryo UI」、「フォントサイズ」は「14」、「フォント太さ」は「極太」と指定する(図8)。

accessvba2_zu_07.png 図8 「氏名テキストボックス」の項目名を設定した

 以下、同じような手順で「性別」「年齢」「住所」「電話番号」のコントロールを配置していく(「性別」については、後の「コンボボックスを配置する」の章も参照)。項目名やコントロールの種類は表1を参照してほしい。

 「年齢」と「〒」「電話番号」の「テキストボックスのウィザード」では、「IME入力モード」の「オフ」を指定する。「IME入力モード」を「オン」にすると「かな入力」が可能になり、「オフ」にすると「英数入力」になる。

 他は全て「氏名テキストボックス」を指定したときと同じだ。コントロールの左に自動で配置される「項目名」ラベルに、プロパティシートから設定する「書式」タブ→「表題」に表1の項目名を指定していく。

コンボボックスを配置する

 「性別」を配置するときには、「コンボボックスウィザード」で「キャンセル」を選択して、別途プロパティシートで設定する。

 「キャンセル」するとフォーム画面上に「コンボボックス」が配置され、「テキストボックス」のときのように左側に自動で項目名(この場合はコントロール名)のラベルが表示される。

 「書式」タブの「標題」に「性別」と入力し、「フォント名」は「Meiryo UI」、「フォントサイズ」は「14」、「フォント太さ」は「極太」と指定する。

 次に「データ」タブを選択し、「値集合ソース」に「男;女」と入力し、「値集合タイプ」は「値リスト」を選択する(図9)。「その他」タブにある「名前」には「性別コンボボックス」と入力する。これがコントロール名となる。

accessvba2_zu_08.png 図9 「性別コンボボックス」のプロパティシートで「値集合ソース」と「集合タイプ」を指定する

フォームビューでコンボボックスを動かしてみる

 図10は、リストボックス以外をフォームに配置したものだ。

accessvba2_zu_09.png 図10 「氏名」「性別」「年齢」「〒」「住所」「電話」のコントロールを配置した

 フォーム以外のグレーの領域でマウスを右クリックをすると、「フォームビュー」というメニューが表示されるのでクリックする(※)。すると実行画面になるので、「コンボボックス」を選択してみよう。

※ 左上の「表示」メニューからも選べる

 図11のように「男」と「女」が選択できればOKだ。「デザインビュー」に戻そう。

accessvba2_zu_10.png 図11 「性別コンボボックス」で「男」「女」の選択が可能になった

ボタンを配置する

 次はデータを登録するための「ボタン」を配置しよう。

 「コントロール」の「ボタン」を選択する。フォーム上にボタンを設置したい場所を選択すると「ボタンウィザード」が起動するが「キャンセル」して、プロパティシートでプロパティを設定する。「書式」タブ内の「標題」に「登録」、「フォント名」に「Meiryo UI」、「フォントサイズ」は「14」、「フォントの太さ」は「極太」を指定する。

 次に「その他」タブを選択して「名前」に「登録ボタン」と入力する。全て設定すると図12のようになる。

accessvba2_zu_11.png 図12 「ボタン」のプロパティを設定した
       1|2 次のページへ

Copyright© 2017 ITmedia, Inc. All Rights Reserved.

TechTargetジャパン

この記事に関連するホワイトペーパー

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。