CSV ファイルを扱う場面は、営業データや顧客リストなど、あらゆるビジネスシーンで登場します。Power Automate(旧 Microsoft Flow)を使って CSV データを読み込み、必要な処理を自動化すれば、毎回の手動作業を大幅に削減できます。ここでは Power Automate で CSV を読み込み、データをさまざまなサービスに連携する方法と注意点をわかりやすく解説します。
1. CSV ファイルの取り込み方法
ケース 1:SharePoint に格納された CSV を読み込む
-
トリガーの設定
- 例:「SharePoint ドキュメントライブラリにファイルが作成または更新されたらフローを起動」とする。
- 対象フォルダを指定すれば、自動的にフローが動くようにできます。
-
ファイル内容を取得 (Get file content)
- トリガーの出力から取得したファイルパスをもとに、SharePoint コネクタの「ファイル コンテンツを取得」アクションを使用。
-
CSV をテキストとして分割・パース
- Power Automate 標準の CSV 用アクションはない場合が多いので、テキスト操作でカンマや改行コードで分割するアプローチを取ります。
- 繰り返し (Apply to each) を使い、一行ずつ処理しながら列を分割し、必要なサービスに書き込むなどのロジックを組む。
ケース 2:OneDrive に CSV ファイルをアップロード
- SharePoint と似ていますが、トリガーとファイル取得アクションを OneDrive for Business コネクタで行うパターン。
- 個人の OneDrive にファイルがアップロードされるたびに自動処理を行うなどのフローを作成できます。
ケース 3:外部サービスから CSV データを取得
- オンラインソースや SFTP、FTP などで CSV をダウンロードして処理することも可能。
- SFTP/FTP はコネクタや有料プラン(プレミアムコネクタ)を要する場合があるので、ライセンスに注意。
2. CSV をパースする実装例
たとえば、以下のような CSV 形式を想定:
Name,Email,Sales
Alice,alice@example.com,1000
Bob,bob@example.com,2000
Charlie,charlie@example.com,1500
1) ファイル取得 → テキスト分割
- 「トリガー」
- 例:「SharePoint ドキュメントに新しいファイルが追加されたら開始」
- 「ファイル コンテンツを取得」
- 取得結果がバイナリとして返るので、内容を文字列に変換(すでに自動変換される場合も)
- テキストを行単位で分割
- 改行コード(
\n
や\r\n
)を使ってスプリットする - 「行の配列」が得られる
- 改行コード(
2) 行ごとに列分割
- Apply to each で行配列をループ
- 行内にカンマ区切りがあるため、カンマ(
,
)でスプリット [0]
に名前、[1]
にメール、[2]
に売上金額…のように割り当て- 変数や、直接他サービスへの登録アクションに割り当てる
- 行内にカンマ区切りがあるため、カンマ(
3) データを書き込む
- 取得したデータをさらに処理する例:
- Excel のテーブルに行を追加
- SharePoint リスト にアイテムを登録
- Microsoft Dataverse などのデータベースに書き込み
- E メール送信や Teams メッセージ投稿に活用
3. CSV 読み込みで注意すべきポイント
-
ヘッダー行の扱い
CSV の最初の行に見出し(Header)がある場合、1 行目はスキップするか別処理で列名を取得するかを決める必要があります。 -
カンマ以外の区切り文字
タブ区切り(TSV)やセミコロン区切りなど、環境によってフォーマットが異なる場合があります。ファイルの実態に合わせて分割文字を変更する必要あり。 -
改行コードの違い
Windows(\r\n
)と Unix 系(\n
)では改行コードが異なる。Power Automate で想定と異なる場合、行分割がうまくいかないこともあるので要確認。 -
エスケープ文字・引用符
CSV にダブルクォーテーション"
が含まれる場合、単純なスプリットでは対応できない可能性があります。複雑な CSV は正規表現や Script アクションを活用する場合も。 -
データ型の変換
数値や日付時刻を文字列として受け取るケースが多い。後工程で数値演算や日付比較をする際は、型変換を検討しましょう。
4. もう少し高度な CSV 処理をしたい場合
- Azure Logic Apps や Azure Functions と連携して正規表現でパース
Power Automate より自由度が高い環境で CSV を解釈し、整形して戻す方法。 - Power Automate Desktop での RPA
CSV を Excel に取り込んだうえで GUI 操作を自動化する手もある。ただしデータ量が多いと非効率になる可能性あり。 - 有料コネクタ・ Script アクション
高度なフォーマット処理を可能にするコネクタや、独自スクリプトを実行できるアクションを利用して、複雑な CSV をハンドリングする。
5. もし困り事があるなら、まずは無料相談を
「複雑な CSV をどうパースすればいい?」「大量の行数を処理してエラーが出る」「他サービスに CSV データをスムーズに連携したい」など、Power Automate やデータ活用でお悩みの方はぜひお気軽にご相談ください。
もし困り事があるなら、まずは無料相談はこちら
コンサルサービスの詳細や成功事例も合わせてご案内。社内にデータ活用の専門知識が不足している場合でも、弊社が伴走し最短ルートで成果を上げられるようサポートいたします。
セミナーで学ぶ!DAX 関数の実践スキル
📊 Power BIでより効率的なレポート作成を!
Power BIハンズオンセミナー初級編 では、短時間でデータモデリングのノウハウを学び、実務に役立つレポート作成を 実践形式 で習得できます。
少人数制 のため、定員になり次第締切!
👉 セミナー詳細を今すぐチェック
📈 Power BIスキルを次のレベルへ!
DAX 関数 × データモデル設計 で、複雑なデータ分析もスムーズに!
Power BIハンズオンセミナー中級編 なら、実践形式で学べるから即戦力に。
業務効率をアップし、社内の評価を高めるチャンス!
今こそスキルアップのタイミング!
👉 詳細はこちら
DAX を使いこなすと、Power BI の真価を最大限に引き出し、ビジネス成果につなげられます。実践的な知識を身につけ、組織のデータドリブン文化をリードしましょう。
まとめ
Power Automate で CSV を読み込み、自動で処理・連携することで、日々の手動コピペやルーティン作業を大幅に減らせます。主な方法は以下のとおり:
- SharePoint や OneDrive に置いた CSV をトリガーにフローを開始
- ファイルのコンテンツを取得 し、テキスト操作で行分割・列分割
- 他サービスへの書き込みやメール通知 などのアクションへつなげる
ただし、複雑な CSV(引用符や改行を含む)ではテキスト分割だけでは対応しづらいケースも。正規表現や Script アクションなどの工夫や、Azure のサービスとの連携を検討する必要があります。用途やデータ量に合ったアプローチを選択し、組織全体の生産性を向上させましょう。もし不明点や応用的な課題がある場合は、無料相談やセミナーなどを活用してスムーズに解決を図ってみてください。
コメント