FileMakerでCSV取り込みをスクリプト自動化する理由
顧客リストや売上データなどを、定期的にCSVファイルで受け取っている場合、毎回「インポート」操作を手作業で行うのは面倒です。
インポート設定を毎回やり直したり、うっかり違うレイアウトで取り込んでしまったりすると、データの食い違いやミスにもつながります。
そこで便利なのが、FileMakerの「スクリプト」でCSV取り込みを自動化する方法です。操作を一度登録しておけば、次回からはボタン一つで同じ手順を再現できます。ここでは、難しい専門用語はできるだけ避けながら、基本的な自動化の手順とポイントを紹介します。
自動化の全体イメージ
CSV取り込みを自動化する流れは、ざっくり次のようになります。
- 取り込み先のテーブルとレイアウトを用意する
- 手動で一度CSVインポートを行い、マッピング設定を保存する
- その操作をスクリプトに登録する
- ボタンからスクリプトを実行できるようにする
一度きちんと設定しておけば、毎回同じCSV形式であれば、ボタンを押すだけで最新データを取り込めるようになります。
取り込み先テーブルとレイアウトを準備する
まずは、CSVデータを入れる「箱」にあたるテーブルを用意します。例えば「顧客リスト.csv」を取り込むなら、次のようなフィールドを持つテーブルを準備します。
- 顧客ID
- 氏名
- メールアドレス
- 電話番号
- 住所
CSVファイルの列名や項目の並びと、できるだけ揃えておくと、この後のマッピング作業がスムーズになります。
次に、そのテーブルを元にしたレイアウトを1つ作っておきます。レイアウト名は「顧客_インポート用」など、後で見て分かりやすい名前にしておきましょう。
一度手作業でCSVをインポートしてみる
スクリプトで自動化する前に、まずは普通に手作業でインポートします。ここで行った設定を、後からスクリプトの中で再利用できます。
- 「顧客_インポート用」レイアウトを開く
- メニューから「ファイル」→「インポート」→「ファイル…」を選択
- CSVファイルを選択し、「開く」をクリック
- フィールドのマッピング画面で、左(CSVの列)と右(FileMakerフィールド)を正しく対応づける
- 必要に応じて、「最初の行はフィールド名として使用」などのオプションを設定する
- 問題なければインポートを実行し、結果を確認する
このときに設定した「どの列をどのフィールドに入れるか」の情報は、スクリプトで同じインポートを行う際にそのまま再利用されます。ですので、この段階でしっかり確認しておくことが大切です。
CSV取り込みをスクリプトに登録する
次に、先ほどのインポート操作をスクリプトとして登録します。ここでは基本的な流れに絞って紹介します。
- メニューから「スクリプト」→「スクリプトワークスペース」を開く
- 新しいスクリプトを作成し、「CSV取り込み_顧客」などの名前を付ける
- スクリプトに次のようなステップを追加する
- レイアウト切り替え:取り込み先のレイアウトに移動します。
例)レイアウト切り替え [ レイアウト名: “顧客_インポート用” ] - レコードをインポート:CSVファイルを読み込むステップです。
一度手動でインポートした後に、このステップを挿入し、同じCSVファイルを指定してマッピングを設定すると、そのマッピング設定がスクリプト内に保存されます。
CSVファイルの場所は、固定のフォルダを指定する方法と、実行時にファイル選択ダイアログを表示する方法があります。最初は、ユーザーにファイルを選んでもらう設定のほうが分かりやすいでしょう。
ファイル選択ダイアログを出す設定
スクリプトステップ「レコードをインポート」のオプションで、「ダイアログあり」にしておくと、スクリプト実行時にファイル選択画面が表示されます。
この場合、スクリプトの流れは次のようになります。
- スクリプトを実行する
- ファイル選択ダイアログが表示される
- 取り込みたいCSVファイルを選ぶ
- 過去に保存されたマッピング設定で、自動的に取り込みが行われる
毎回ファイル名や保存場所が変わる場合は、この方法がシンプルで扱いやすいです。
ボタンからワンクリックで実行できるようにする
スクリプトができたら、レイアウト上にボタンを置いて、そこから実行できるようにします。
- 「顧客_インポート用」レイアウトをレイアウトモードで開く
- ボタンツールを配置し、「CSV取り込み」などのラベルを付ける
- ボタンの動作として「スクリプトを実行」を選び、作成した「CSV取り込み_顧客」スクリプトを指定する
これで、普段はレイアウト上のボタンをクリックするだけで、CSV取り込みが再現されます。操作を担当する人に、複雑なメニュー操作を覚えてもらう必要もなくなります。
自動化を安定して運用するためのポイント
CSV取り込みの自動化を長く安定して使うために、次の点も意識しておくと安心です。
- CSVの列の順番や名前を変えない
取り込み設定(マッピング)は、CSVの列順に依存しています。ファイル提供側に、仕様を安易に変更しないよう依頼しておくとトラブルが減ります。 - バックアップを取ってからテストする
新しいスクリプトを試す前には、必ずバックアップコピーを取る習慣を付けましょう。誤った取り込みで既存データを上書きしてしまうリスクを減らせます。 - テスト用のCSVで動作確認する
最初は、数件だけ入ったテスト用CSVで動作を確認し、問題がないことを確認してから本番データを取り込みます。
まとめ:手作業インポートを卒業して、ボタン一つの運用へ
FileMakerでCSV取り込みをスクリプト自動化することで、毎回の面倒な設定や人的ミスを大きく減らせます。
一度丁寧に「テーブル準備 → 手動インポート → スクリプト化 → ボタン配置」という流れを作っておけば、その後は現場の担当者でも簡単にデータ更新が行えます。
さらに慣れてきたら、取り込み前に古いデータを整理したり、取り込み後に集計やレポート出力を自動で行うなど、スクリプトを発展させることも可能です。まずは基本の自動化から始めて、自社の運用に合わせて少しずつ改良していくと良いでしょう。