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の操作レッスンなど様々なサービスをご提供しています。
ご興味のある方は下記のサービス一覧をご覧ください。
最後までお読みいただき、ありがとうございました。