Excelデータの準備とAccessでのインポート
Accessのテーブルが作成され、リレーションシップが設定されると
いよいよデータを入力することになります。
テーブルから一レコードずつ入力することも出来ますが、
今回は、すでにExcelでデータが準備されており、それをAccessに移行するイメージで進めていきます。
Excelデータの準備
Accessには他のAccessデータベースから取り込んだり、オンラインのデータサービスから取り込んだりと
データ取り込みの方法がいくつか用意されています。
ここでは、Excelのデータを取り込む方法を紹介します。
AccessはExcelと同じMicrosoftのOfficeシリーズですので、Excelファイルを直接取り込むこともできますが、
場合によっては読み込みエラーが起こることがあります。

そのような場合、確実に取り込むために、少し手間ですが、いったんExcelからCSV形式でデータを書き出して、
そのデータを取り込むようにします。
- エクセルの元データを開き、Accessのフィールドと同じ順にしたシートを作成する。
この時に、テーブル名と同じシート名にしておくと間違いにくい。
- 全てのテーブルに分類できたら、元のデータを保存しておく。
- 書き出ししたいシートを表示し、[名前をつけて保存]を選ぶ。

書き出し先は分かり易いように、予めデスクトップ上に任意のフォルダを作って、そこに保存すると紛れにくい。
- 書き出しの際、[名前をつけて保存]のウィンドウで、[ファイル名]をシートと同じ名前にする。
[ファイルの種類]を必ず[CSV(コンマ区切り)]を選択する。
(紛らわしい[CSV UTF-8(コンマ区切り)という選択肢もあるので注意)

- 保存の時に、「複数のシートを保存できない」旨の警告が出るが、[OK]を押す。

- 3~5を、テーブルの数だけ繰り返す。
- 最後に、Excelを閉じる時には[保存しない]を選択すること。
(他のシートがなくなってしまう、)
注意点まとめ
- テーブルごとに正規化されたシートを作る。
- フィールド名の綴りが、Accessのフィールド名と一致していること。
- フィールドの順番が、Accessのフィールド名と一致していること。
- 桁区切りの数値のある列は、桁区切りを解除しておく。
- 桁区切りの影響でフィールドの値がずれてしまった場合は、
[テキスト区切り記号]を「"」を選んでみる
- [ファイルの種類]を必ず[CSV(コンマ区切り)]を選択する。
- シートごとに、わかりやすい名前をつけて保存する。
(シート名と同じにしておくと分かり易い)
- 一回でもCSVで保存したExcelデータは上書き保存しない。
(他のシートがなくなってしまう、)
Accessでのデータインポート
- データを取り込む際は、全てのオブジェクトを閉じておく。
- Accessでデータをインポートするには、[外部データ]>[新しいデータソース]>[ファイルから]>[テキストファイル]を選択する。

- [外部データの取り込み]のウィンドウが表示されたら、[ファイル名]の右にある[参照]ボタンを押して、
取り込むCSVファイルを選択する。
下に3つ並んでいるラジオボックスは、真ん中の[レコードのコピーを次のテーブルに追加する]を選び、
リストボックスから対応するテーブル名を選択する.

- [参照整合性]にチェックを入れている場合、取り込む順番は、必ず[リレーションテーブル]の末端側から取り込む.
(参照整合性エラーが発生するため)

- [テキスト インポート ウィザード]が表示されるので、内容が間違っていないか、文字化けがないか確認し[次へ]を押す。

- [フィールド区切り記号]は[コンマ]が選択されていることを確認し、
[先頭行をフィールド名として使う]にチェックを入れる。
データの区切りが間違っていないか確認し[次へ]を押す。データの区切りが間違っていないか確認し[次へ]を押す。

- [インポート先のテーブル]が間違っていないか確認し[完了]ボタンを押す。

- このあと、操作を保存するかのダイヤログが表示されるが、保存しなくても良い。

- 2~8をテーブルの数だけ繰り返す。
- テーブルを開き、正常にデータが読み込まれているか確認する。
- [参照整合性]のため、インポートの順番を間違えるとエラーメッセージが表示される。
