Tips-06.外部ファイルのインポート

Excelで管理している表データや、他システムのデータをテキストファイルに落としてAccessに取り込むと、データベースとして管理することができるようになります。
その際の注意点などまとめてみました。
インポートするファイル形式は、「Excel」と「テキストファイル」について説明します。

1.Excelファイルの読み込み

1.1 Excelファイルの指定

主メニューの「外部データ」から「新しいデータソース」を選択し、「Excel」を指定します。


ファイルの検索と保存方法を指定する画面が表示されます。

1.2 保存方法①の場合(新しいテーブルを作成)

<Excelサンプルデータ>

列A列B列C列D
A株式会社本社東京都
2A株式会社大阪支店大阪市
3A株式会社京都支店京都市
4B株式会社本社神戸市
<A見出し行のない場合>
列A列B列C列D
ID会社名本支店住所
A株式会社本社東京都
A株式会社大阪支店大阪市
3A株式会社京都支店京都市
4B株式会社本社神戸市
<B見出し行のある場合>

(A)見出し行のない場合

①選択したExcelファイルの登録内容が表示されますので、取り込むシートを選択します。

②見出し行のない場合はチェックを入れません。

ナンバリングされたフィールド名が自動で作成されます。

③フィールド名、キーオプション、データ型を適切な値に変更します。

今下記のように修正したとします。

フィールド1フィールド名=ID、データ型=長整数、インデックス=はい(重複なし
フィールド2フィールド名=会社名、データ型=短いテキスト、インデックス=なし
フィールド3フィールド名=本支店、データ型=短いテキスト、インデックス=なし
フィールド4フィールド名=住所、データ型=長いテキスト、インデックス=なし

④インデックスキーを追加するか否かを指定します。
自動設定を選択した場合は、オートナンバー型の主キーが追加されます。
この例では「ID」を主キーと指定しましたので、フィールドから「ID」を選択しています。

⑤最後にテーブル名を入力して、完了です。

今は、「会社情報」と入力しました。

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

(B)見出し行のある場合

①シートを選択します。
開いたときは見出し行もデータとして表示されます。

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

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

1.3 保存方法②の場合(既存のテーブルに追加)

作業中のAccessにテーブルが一つもない場合は、この保存方法は表示されません。

先に新規作成した、「会社情報」テーブルに、右のようなデータを追加するものとします。

 

列A列B列C列D
ID会社名本支店住所
10C株式会社本社奈良県
11C株式会社大阪支店大阪市

①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に取り込むことによって有効に活用できるようになります。参考になれば幸いです。