ACCESS csvファイルのインポート方法

csvファイルのインポート方法

ACCESSに他のデータベースやシステムからデータを取り込みたい時によく使われるのがcsvファイルの取り込みです。

今回は、ACCESSにcsvファイルをインポートする方法をご説明します。


こんにちは。
はこにわガジェット (@hakoniwagadget) です。

ACCESSを使った売上管理、顧客管理などのデータベース開発を行っています。
ACCESSは使いこなすために少しスキルが必要なものの、うまく活用すればExcelよりも業務の効率化が図れます。
この記事ではACCESSの基本的な使い方をご紹介していきます。

サンプルデータ

今回はインポート用に下記のサンプルデータを用意しました。

売上日、顧客名、売上金額という比較的シンプルなcsvファイルです。

こちらをACCESSへインポートしていきましょう。

新規テーブルへのインポート処理

csvファイルをインポートするには、ウィザードを使用します。
ファイルメニューから外部データ→テキストファイルを選択しましょう。

すると、テキストファイルのインポートウィザードが立ち上がります。

csvファイルを上段で選択し、下段でデータベースへの保存方法を選択します。

保存方法は以下の3種類です。

現在のデータベースの新しいテーブルにソースデータをインポートする新規テーブルを作成して、インポートしたデータを格納します。
レコードのコピーを次のテーブルに追加する既存のテーブルにインポートしたデータを格納します。
リンクテーブルを作成してソースデータにリンクする実データをACCESSファイルに取り込まず、外部のファイルを参照してデータを扱えるようにします。

今回は「 現在のデータベースの新しいテーブルにソースデータをインポートする 」を選択して新規テーブルを作成します。

次に、データの区切り方を選択します。

ほとんどのcsvファイルは「,」などで区切られていると思いますので、「区切り記号付き」を選択します。

次の画面で、区切り記号を選択します。

基本はcsvファイルを読み取ってACCESSが自動で判別してくれます。
今回はカンマ区切りなので、「カンマ」を選択します。

また、ここで重要なのは「先頭行をフィールド名として使う」のチェックボックスです。

このチェックをつけることで、最初の行をフィールド名(見出し)として利用できます。

次の画面では、各フィールドごとのデータ型等の設定をします。

データ型(テキスト型、数値型、日付型、など)はデータを見てACCESSが自動判別してくれますが、たまに誤っている場合があります。

そうした際にこの画面でデータ型を修正できます。

また、インポートしないフィールドの除外もできます。

次に、主キーの設定をします。

主キーの設定は以下の3種類から選択できます。

主キーを自動的に設定する主キーのためのフィールドを新規追加します。
次のフィールドに主キーを設定する既存のフィールドを主キーとして扱います。
主キーを設定しない主キーを設定しません。

ACCESSのテーブルを作成する際には主キー設定は必須、というのが大原則です。

しかし、インポートデータに関してはインポート後に他のテーブルにコピーして使うことも多く、インポート段階で主キー設定しないことも実務では多々あります。

今回は主キーを設定しない、を選択します。

最後に、テーブル名を指定して、インポート処理は完了です。

インポートの完了メッセージが表示され、テーブルが作成されますので、内容を確認してみましょう。

無事にインポートができました。

テーブルをデザインビューで見てみると、各フィールドもきちんと設定できていることが分かります。

これで新規テーブルへのインポート処理は完了です。

既存テーブルへのインポート処理

次に、既存テーブルへのインポート処理についてご説明しましょう。

実は既存テーブルへのインポート処理はACCESSの中でも非常に難しい処理の一つです。

とはいっても操作自体は簡単です。
難しいのは、インポートを無事に完了できるまで、データの整備を行わなければいけない点です。

インポート時はデータベースの保存方法を選択する画面で、「レコードのコピーを次のテーブルに追加する」を選択して、インポート先のテーブルを指定します。

以降は先ほどと同じ処理でインポートができます。

インポートエラー処理

これで正常にインポートが終われば問題ないのですが、インポート処理はなかなかうまくいかないことが多いです。

インポート時に以下のような画面が表示されたら、インポートが一部失敗しています。

こういった場合は、どこがエラーになったかを確認してインポートデータを修正する必要があります。
インポートが失敗する原因のほとんどは、データ型の誤りです。

数値型のフィールドにテキストが入っていたり、短いテキスト型のフィールドに長いテキストが入っていると、インポート時にデータをテーブルに格納できずエラーになります。

まずはインポート後のテーブルをみて、おかしなデータがないか確認しましょう。
場合によってはインポートエラーテーブルが作成されますので、そういった場合はインポートエラーテーブルを参照すればどのレコードがエラーだったのかわかります。

この場合は、金額が入っていないレコードが一つありますね。

インポートした元のデータを見てみましょう。

すると、金額欄に数値ではなくアルファベットが入っていました。

これがインポートエラーの原因ですね。
ここを数値に直し、先ほどインポートしたデータをACCESSから削除して再度インポートしなおせば正常にインポート処理が終わります。

このように、インポート処理はエラーが発生した際のその原因究明と、インポート処理のやり直しを繰り返す必要があるので、なかなか手のかかる作業です。

何度もデータの削除とインポートを繰り返すうちにデータが二重に入ってしまう、ということの無いよう注意して作業ください。

以上、csvファイルのインポート方法についてご紹介しました。


ACCESSを使いこなせば、業務の効率化や自動化が実現できます。
しかし、自分でACCESSを学ぶには時間がない、難しそうで不安、という方も多いでしょう。

そんな時は、ACCESS開発歴20年以上、過去に100以上のACCESSデータベースを開発してきた私(@hakoniwagadget)にお任せください。

ACCESSの新規開発、既存のACCESSの修正、ACCESSの操作レッスンなど様々なサービスをご提供しています。
ご興味のある方は下記のサービス一覧をご覧ください。

サービス一覧

最後までお読みいただき、ありがとうございました。