中級者のためのExcel エクセルマクロVBA:Accessデータベースとつなぐその3
Accessを使ってみる
さて、前回までで、大体表(テーブル)の整理が終わりました。今回はこれを元に実際にテーブルをAccessで作ってみましょう。
Excelマクロのお話でAccessの話をするのも何ですが、これもマクロのためです。というか、これができると本格的な「業務システム」ができるようになりますので、みなさん頑張りましょう。
テーブルを定義してみる
では、前回作ったいくつかの表を本格的に、テーブルとして定義します。
利用者テーブル(User)
id | 主キー |
user_name | 名前 |
post_num | 郵便番号 |
address | 住所 |
商品テーブル(Product)
id | 主キー |
product_name | 商品名 |
price | 価格 |
注文テーブル(Order)
id | 注文番号(主キー) |
order_date | 注文日時 |
user_id | 注文者ID |
amount | 合計金額 |
注文詳細テーブル(OrderDetail)
id | 主キー |
order_id | 注文番号 |
product_id | 商品ID |
num | 数量 |
とこんな感じですね。これをAccessに作っていけば良いのです。ではAccessを開きましょう。最初の画面の左にある「テーブル1」を右クリックして「デザインビュー」を開きます。
この時にテーブル名を聞かれるので、「User」としましょう。
すると、右のメイン画面にテーブルの定義ができるようになります。IDは最初から入っています。鍵マークがこのUserテーブルの主キーを表しています。次に名前の列(カラム)を定義します。名前を入力して、データの型を選択します。最初はテキスト型か、数値型の2種類だけでも大丈夫です。文字を入れる列なら、テキスト型、数を入れるなら数値型にします。
するとその下にフィールドプロパティの画面があるのでこの列に入れることができる最大の文字数を決めます。名前なので20文字としています。後、金額や、数値はすべて整数になるのでカラムのプロパティにある小数点以下表示桁数を0にしておいてください。また、ID列に注文番号や、商品IDはアルファベットも入るのでこれはテキスト型に変更しておきます。
この要領で、後は残りのカラムと残り3つのテーブルについても定義します。注文日時は日付/時刻型にしておきましょう。
後はそれぞれデータを入れてしまいます。データを入れる場合は作成したテーブルをダブルクリックするとデータを入れることができるようになります。データはエクセルから貼り付けで入れることができます!これは便利ですね。
これでデータが入りました!これで立派なAccessデータベースの完成です!次回はこのDBとエクセルとをいよいよつないでみたいと思います。ボタンを押して一発検索!なんてやってみたいと思いませんか?
今日はここまで!
かしこ。