ACCESS インポート定義ファイルの作成方法

インポート定義ファイルの作成方法

ACCESSでcsvファイルなどを取り込む際にはテーブルレイアウトを指定する必要があります。
あるフィールドはテキスト型、あるフィールドは数値型、等。

このフィールドの定義をまとめたものがインポート定義ファイルです。

今回は、インポート定義ファイルの作成方法をご紹介します。


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

ACCESSを使った売上管理、顧客管理などのデータベース開発を行っています。
ACCESSは基本機能だけでも十分便利ですが、VBAを使うことで格段に使いやすいデータベースを作成可能です。
この記事ではACCESSでのVBAの使い方をご紹介していきます。

インポート定義ファイルとは

インポート定義ファイルとは、ファイルをACCESSに取り込む際にどのフィールドをどのデータ型で取り込むかを定義したデータです。

手動でファイルを取り込む際は、各フィールドのデータ型は個別に指定するので問題ありませんが、VBAを使って自動でインポートする処理を作成すると、この指定ができません。

そこで、あらかじめデータ型を定義しておくインポート定義ファイルを作成しておき、インポート時にその定義ファイルを呼び込むという処理を行うのです。

インポート定義ファイルの作成方法

では、インポート定義を作成しましょう。

まずは、csvファイルのインポート処理を進めます。

ACCESSを起動し、メニューバーから「外部データ」→「テキストファイル」を選択します。

次に、ウィザード画面でインポートするファイルを選択し、「現在のデータベースの新しいテーブルにソースデータをインポートする」を選択して、OKを押します。

csvファイルのデータ形式を聞かれます。

今回は、インポートするファイルがカンマ区切りのため、上の「区切り記号付き」を選択します。
ここはインポートするファイルの形式に合わせて都度選択します。

区切り記号を指定します。

今回はカンマですね。
それと、csvファイルの先頭の行が見出しの場合は、「先頭行をフィールド名として使う」にチェックします。
ここにチェックすると、先頭行はデータとして扱わず、フィールド名(見出し)になります。

主キー設定を聞かれます。
ここも、インポートするデータによって異なるのですが、今回のデータでは「主キーを設定しない」を選択しておきます。

そして、ここで「設定」を押します。

すると、インポート定義を設定する画面が表示されます。

下段の「フィールドの情報」で取り込む各フィールドのデータ型を設定します。

基本的には自動で設定されますが、自動設定が誤っている場合は手動で修正が可能です。
また、取り込みしないフィールドは「スキップ」欄にチェックを付けることで取り込みをスキップできます。

この画面で「保存」を押すとインポート定義が保存できます。

ここで保存した名前はあとでVBAで使用しますので覚えておきましょう。
インポート定義が保存できれば、インポート処理自体は中断してかまいません。

これで、インポート定義ファイルは完成です。

インポート定義ファイルの利用方法

インポート定義ファイルはVBAで呼び出して使用することが可能です。

VBAでcsvファイルのインポート処理を作成する際は、DoCmd.TransferTextを使用します。

例えば、以下のようなコードになります。


 DoCmd.TransferText acImportDelim, "サンプルcsv インポート定義", file_name, False

2つ目の引数に「サンプルcsv インポート定義」というインポート定義ファイルを指定しています。

これにより、先ほど作成したインポート定義ファイルに従ってインポート処理を行ことができます。

以上、ACCESSでのインポート定義ファイルの作成方法をご紹介しました。


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

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

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

サービス一覧

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