【VBA】ユーザー目線で開発する2

Accessインポート用にExcelを加工

最近、仕事なくて暇なjimです。ども✋

前回、『【VBA】ユーザー目線で開発する1』で、端末のユーザー名取得を紹介しました。

で、今回はAccessで『端末のユーザー名と個人情報を紐づけしたデータベース作成』といった記事です。

まずは、前回のExcelデータをAccessにインポートできるように加工します。

↓前回のデータですが、これだとインポートできません。

↓1行目を項目名にして、2行目以降をデータにします。山田さんは省きました。

今回みたいな緩いDBは大丈夫ですが、Excelデータ取り込む時には半角全角や数値や文字列などキッチリ揃えておきましょう。場合によっては、やらないとエラーが出ます。山ほど😆

はい、これでOKです。適当なところに保存しましょう👍

 

AccessでExcelをインポートする

Accessで直接テーブルを作ってもいいんですが、既にExcelで表ができているのならインポートが楽です。

Accessを開いて、『空のデータベース』を選択します。

Accessは一番最初に保存先とファイル名を決めます。

それでは、ファイルをインポートします。

参照ファイルは、最初に加工したExcelファイルを選択します。

Excelで作成した項目名を使用します。以下のようにチェックを入れると1行目が項目名として扱われます。

ここで項目名やデータ型を変更できますが、インポート後にも変更できるので飛ばします。

主キーとはオートナンバーのことです。行が追加されると自動でナンバリングされます。

不要なので、『主キーを設定しない』にチェックを入れます。

最後にテーブル名を入力して完了。テーブル名も後で変更できるので適当でいいです。

 

データベース完成

データベースが完成しました。

テーブル名をダブルクリックするか、右クリックから開くを選択するとテーブルを開くことが出来ます。

途中で設定しなかったデータ型なども、フィールドタブから変更できます。

デザインビューのがわかりやすいかな?変更もしやすいかも🤔

 

おまけ

せっかくなので、クエリの作成も紹介します。

今回は、ユーザー名がgakeさんの、名字とメールアドレスを抽出します。

Excelでよくある『○○列が何々の△△列が□□』という会話は、頭の中で列を項目名に変換するという無駄があるんです。これがバカらしく感じるかもしれません。

作成タブからクエリ作成を開始します。

ドラッグでテーブルの追加。(画像右側のテーブルの追加でもできます)

今回は、ユーザー名で抽出して、欲しい項目は名前とメールアドレスなので、それらの項目3つをドラッグして追加します。(フィールドのプルダウンで選択も可能)

抽出に必要な項目は、テーブルには不要なので非表示に変更。

そして、抽出条件を入力。

最後に、実行します。

↓条件通りに抽出できました。元々1つしかデータないけど😅

クエリの作成の7~8割くらい?マウス操作でできますが、SQLビューで直接SQLを打ち込んでクエリ作成することもできます。

 

 

はい、今回は簡単にAccessデータベース作成を紹介しました。

最終的には『Excelのセルを参照⇒データベース参照』と思ってるんですが、画像が多くなるな・・・

次回はユーザーフォームの作成だけになるかも😓

それじゃ、またね✋