Accessを通じて、初心者がリレーショナルデータベースやSQLの基本を学び、データベースを使った簡単なシステムの作り方を習得する本連載。今回は、「SQL」文で登録されているデータの編集処理を可能にし、変更をデータベースに反映させる方法を解説する。
本連載はMicrosoft Access(マイクロソフトアクセス 以下、Access)を使って、リレーショナルデータベース(RDB)やSQLの基本を学び、データベースを使った簡単なシステムの作り方を習得するものだ。
前回は名前と住所による「あいまい検索処理」の機能をSQL文を使って実装する方法などを解説した。
今回はこの顧客管理データベースへ、「データの編集機能」を実装する。フォームからデータの編集を可能にして、変更をデータベースに反映させるところまでを解説する。
第1回「どんなビジネスにも欠かせないリレーショナルデータベースの基礎知識と作り方――テーブル、レコード、フィールド、主キーとは」、第2回「Access VBAでデータ入力フォームを作り、各コントロールを追加するためのデザインビューの使い方」で作成した「顧客管理.accdb」を今回も使用する。「顧客管理.accdb」をダブルクリックし、「ナビゲーションウインドウ」から「顧客管理テーブル」を開いてほしい。
今回は、第2回「Access VBAでデータ入力フォームを作り、各コントロールを追加するためのデザインビューの使い方」で使用したデータ入力フォームを再利用しよう。
データの入力と編集を同じフォームで実装することもできるのだが、処理が複雑になり、分かりづらくなるので、今回は分けることにする。「データ入力フォーム」から全てのコントロールを選択してコピーし、Accessメニューの「作成」→「フォームのデザイン」より、新しいフォームの画面上にペーストしておいてほしい(図1)。
タイトルの「ラベル」の「標題」をプロパティシートから「データ編集フォーム」と表題を変更しておく。また、「登録」ボタンは「編集」ボタンに変えておく。
各コントロールの名前は、表1のように指定した。
配置するコントロールの種類 | コントロール名 |
---|---|
テキストボックス | 氏名テキストボックス |
コンボボックス | 性別コンボボックス |
テキストボックス | 年齢テキストボックス |
テキストボックス | 郵便番号テキストボックス |
テキストボックス | 住所テキストボックス |
テキストボックス | 電話テキストボックス |
ボタン | 編集ボタン |
リストボックス | 一覧リストボックス |
ラベル | メニューや項目名となるラベル |
表1 配置する項目とコントロールの種類 |
フォームの背景色も変更しておこう。デザインビューからフォーム全体を選択し、「プロパティシート」の「書式」内の「背景色」から「背景 - フォーム」を選択すると、背景色が「薄いベージュ」に変わる。
完成したレイアウトは図2の通りだ。
「上書き保存」を選ぶと、現在作成している「フォーム」の保存画面が表示される。今回は「データ編集フォーム」という名前で保存しておく。
このように、「ナビゲーションウインドウ」の「フォーム」欄に「データ編集フォーム」が追加される(図3)。
Copyright © ITmedia, Inc. All Rights Reserved.