Excelで管理している表データや、他システムのデータをテキストファイルに落としてAccessに取り込むと、データベースとして管理することができるようになります。
その際の注意点などまとめてみました。
インポートするファイル形式は、「Excel」と「テキストファイル」について説明します。
1.Excelファイルの読み込み
1.1 Excelファイルの指定
主メニューの「外部データ」から「新しいデータソース」を選択し、「Excel」を指定します。
ファイルの検索と保存方法を指定する画面が表示されます。


1.2 保存方法①の場合(新しいテーブルを作成)
<Excelサンプルデータ>
| 列A | 列B | 列C | 列D |
|---|---|---|---|
| 1 | A株式会社 | 本社 | 東京都 |
| 2 | A株式会社 | 大阪支店 | 大阪市 |
| 3 | A株式会社 | 京都支店 | 京都市 |
| 4 | B株式会社 | 本社 | 神戸市 |
| 列A | 列B | 列C | 列D |
|---|---|---|---|
| ID | 会社名 | 本支店 | 住所 |
| 1 | A株式会社 | 本社 | 東京都 |
| 2 | A株式会社 | 大阪支店 | 大阪市 |
| 3 | A株式会社 | 京都支店 | 京都市 |
| 4 | B株式会社 | 本社 | 神戸市 |
(A)見出し行のない場合
①選択したExcelファイルの登録内容が表示されますので、取り込むシートを選択します。

②見出し行のない場合はチェックを入れません。
ナンバリングされたフィールド名が自動で作成されます。

③フィールド名、キーオプション、データ型を適切な値に変更します。
今下記のように修正したとします。

| フィールド1 | フィールド名=ID、データ型=長整数、インデックス=はい(重複なし) |
| フィールド2 | フィールド名=会社名、データ型=短いテキスト、インデックス=なし |
| フィールド3 | フィールド名=本支店、データ型=短いテキスト、インデックス=なし |
| フィールド4 | フィールド名=住所、データ型=長いテキスト、インデックス=なし |
④インデックスキーを追加するか否かを指定します。
自動設定を選択した場合は、オートナンバー型の主キーが追加されます。
この例では「ID」を主キーと指定しましたので、フィールドから「ID」を選択しています。

⑤最後にテーブル名を入力して、完了です。
今は、「会社情報」と入力しました。

⑥下記のように新規テーブルが作成されました。

(B)見出し行のある場合
①シートを選択します。
開いたときは見出し行もデータとして表示されます。

②「先頭行をフィールド名として使う」にチェックをいれると、先頭行がそのままフィールド名になります。
以降は(A)見出し行のない場合と同様です。
③フィールド名、キーオプション、データ型を修正
④主キーを設定
⑤テーブル名を入力 です。

次のようなエラーは、自動で割り振られたフィールド名の列に、何か作業をした痕跡が残っている場合です。
その列を削除するか、見出しを入力すると解消できます。
CSVファイルに落とすと余分なカンマがあることでも確認できます。

1.3 保存方法②の場合(既存のテーブルに追加)
作業中のAccessにテーブルが一つもない場合は、この保存方法は表示されません。
先に新規作成した、「会社情報」テーブルに、右のようなデータを追加するものとします。
| 列A | 列B | 列C | 列D |
| ID | 会社名 | 本支店 | 住所 |
| 10 | C株式会社 | 本社 | 奈良県 |
| 11 | C株式会社 | 大阪支店 | 大阪市 |
①Excelファイルを開いて、Sheetを選択します。
開いたときは見出し行も、データとして表示されます。

②「先頭行をフィールドとして使う」
は選択できません。
先頭行がフィールド名とみなされます。
よって、見出し行は必ず必要です。また、追加するテーブルのフィールド名と一致させておく必要があります。

③テーブル名も変更できません。
そのまま「完了」ボタンを押下します。

④「会社情報」テーブルに追加されました。

下記のようなデータはエラーが出ます。
①見出し行がない
②保存先テーブルにないデータ(担当者の列)がある
③保存先テーブルに必要なデータ(住所)が不足している

Excelデータを取り込む際には、
〇余分な空白のセルがないか
〇見出しは保存先テーブルのフィールド名と一致しているか
〇主キーとした列には重複した値が登録されていないか
など、注意が必要です。
1.4 保存方法③の場合(リンクテーブルにする)
保存方法①(新しいテーブルを作成)の場合と同じです。
①保存方法③を選択して、シートを選択します。
②「先頭行をフィールド名として使う」チェックボックスに必要ならチェックを入れます。
③フィールド名、キーオプション、データ型を修正します。
④テーブル名を入力して完了です。
ここで既存のテーブル名を指定すると上書き保存されます。
⑤リンクテーブル名の前に矢印が追加されます。リンクテーブルマークです。

⑥主メニューから「リンクテーブルマネジャー」を開くと、リンク先のアドレス、テーブル名を確認することができます。

3.テキストファイルの取り込み
3.1 テキストファイルの選択
主メニューの「外部データ」から
「新しいデータソース」を選択し、
「テキストファイル」を選択します。
「Excel」を選択した場合と同様に、ファイルの検索と保存方法を指定する画面が表示されます。

以下、Excelファイルの取り込みと同様です。
①テキストファイルを指定
②「先頭行をフィールド名として使う」のチェックを選択
③インデックスを追加するか否かの設定
④テーブル名を入力 です。
3.2 文字化けする場合の対処
メモ帳などで作成したテキストファイルの場合には、右のような文字化けを起こすことがあります。
その場合は、「設定ボタン」を押下して「ファイル形式」などの設定画面を開いてください。

コードページで「日本語(シフトJIS)」からそのファイルの作成されてコードを選択してください。
Windowsのメモ帳の場合は「Unicode(UTF-8)」に変更すると文字化けは解消できます。

あるいは、メモ帳の場合は、メモ帳で開きなおし「名前を付けて保存」で「エンコード」を「ANSI」に変更して保存することでも解消できます。「ANSI」は「SHIFT_JIS」のことです。

Accessは「SHIFT_JIS」で書かれたテキストファイルを前提としているからです。
メインフレームで作成したデータを、Accessに取り込むことによって有効に活用できるようになります。参考になれば幸いです。
