Power Automate Desktopでテキストファイルを自在に操る!文字化け・大容量対策まで完全解説

  • URLをコピーしました!
目次

💡この記事でわかること

Power Automate Desktop(以下PAD)でテキストファイルを扱うとき、
「読み込めたけど文字化けしている…」
「ファイルサイズが大きすぎて途中で止まる…」
といったトラブルに悩んだ経験はありませんか?

本記事では、そうした初心者がつまずきやすいテキストファイル操作の基礎から応用までを、
具体的なPADアクションの設定例とともにわかりやすく解説します。


🪄 テキストファイルの読み込み:基本と応用

🔹アクションの選択

PADのアクション一覧から、
[ファイル]グループ →「ファイルからテキストを読み取る」 をドラッグして配置します。

このアクションは、テキストファイル内のデータをPADで扱えるようにする最初のステップです。


🔹設定手順

  1. ファイルパス
     読み込みたいファイルを指定します。
     例)C:\Users\〇〇\Documents\sample.txt
  2. 内容の保存方法
     ここが最も重要なポイントです。
     - 「単一のテキスト値」 → ファイル全体を一括で1つの変数に格納
     - 「リスト(それぞれがリストアイテム)」 → 1行ごとに分けて格納
  3. エンコード
     文字コード(UTF-8、Shift-JIS、ANSIなど)を設定します。

🔸ファイル全体を一括で読み込む場合

「内容の保存方法」を 「単一のテキスト値」 に設定します。
この方法では、ファイルのすべての内容が1つの変数(例:FileText)に格納されます。

変数名:FileText
内容:"東京都,125000\n大阪府,98000\n福岡県,70000"

この方法はファイルサイズが小さいときにシンプルで最も高速です。


🔸1行ずつ読み込む(リスト形式)

「内容の保存方法」を 「リスト(それぞれがリストアイテム)」 に変更します。
これにより、テキストの各行がリストとして格納されます。

変数名:FileLines
内容:["東京都,125000", "大阪府,98000", "福岡県,70000"]

このリストを「For each」アクションでループすれば、行ごとの処理が可能になります👇


🔹ループ処理の設定

  1. 「ループ」→「For each」アクションをドラッグ。
  2. 対象リストに FileLines を指定。
  3. ループ内で「CurrentItem」変数を使えば、1行ずつ処理できます。

例)

CurrentItem = "大阪府,98000"

この値を「分割」アクションでカンマ区切りに分けることで、
都道府県名と売上額を個別に取得することも可能です。


✍️ テキストファイルへの書き込み

次に、テキストファイルへデータを書き込む方法を見ていきましょう。

🔹アクションの選択

[ファイル]グループ →「テキストをファイルに書き込む」 をドラッグして使用します。


🔹設定のポイント

  1. ファイルパス
     保存したいテキストファイルを指定します。
     例)C:\Users\〇〇\Documents\output.txt
  2. ファイルが存在する場合の動作
     - 「既存の内容を上書きする」
     - 「内容を追加する(追記)」
     どちらかを選択します。
     追記する場合は、既存データを保持したまま新しい内容を追加できます。
  3. 新しい行を追加する
     オンにすると、自動で改行(改行コード)を挿入してくれます。
     ログファイルや複数行出力時に非常に便利です。

🔸実践例:リスト内容を1行ずつ書き込む

  1. 先ほどの FileLines をループ処理します。
  2. 各ループの中で「テキストをファイルに書き込む」アクションを追加。
  3. 「ファイルが存在する場合」=「内容を追加する」
  4. 「新しい行を追加する」をオン。

これで、元のテキストファイルを1行ずつ追記していく処理が自動化されます。


⚠️ 文字化け対策(エンコード設定)

文字化けの多くは、ファイルの文字コードとPADの設定が一致していないことが原因です。

🔹基本の考え方

  • まずは UTF-8 を試す(最も標準的)
  • 文字化けする場合 → Shift-JIS または ANSI を順番に試す

🔹チェック方法

  1. ファイルを右クリック → 「メモ帳で開く」
  2. 「名前を付けて保存」→ 「文字コード」欄を確認

🔹ポイント

Windowsのメモ帳で作成したファイルは、多くの場合 Shift-JIS(またはANSI) です。
UTF-8で文字化けする場合は、エンコードを「システムの規定値」に切り替えましょう。


🧠 大容量ファイルを安定して処理するコツ

数十MBを超えるような大きなファイルを読み込むときは、
「単一テキスト値」方式ではメモリ負荷が高く、処理が遅くなります。

✅解決策:「リスト(それぞれがリストアイテム)」を使う

リスト形式で読み込めば、
ファイルを一気に読み込まず行ごとに分割して順次処理できるため、
メモリ使用量を抑え、安定性が向上します。


💬 よくある質問(FAQ)

Q1. ファイルが読み込めません。

→ パス指定が間違っているか、ファイルにアクセス権がない可能性があります。
 フルパス指定で再設定してみましょう。

Q2. 読み込み結果が空になります。

→ ファイルがUTF-8以外の文字コードで保存されている可能性があります。
 エンコードを「システムの規定値」または「ANSI」に変更してください。

Q3. 文字化けが直りません。

→ メモ帳でファイルを開き、「名前を付けて保存」で文字コードを確認するのが確実です。

Q4. 書き込み結果が途中で止まります。

→ 大容量ファイルを一括処理している可能性があります。
 リスト形式+For eachループでの順次書き込みに切り替えましょう。


🚀 まとめ:3つのポイントを押さえれば安定動作!

  1. 読み込み方法の使い分け
     → 小容量は「単一」、大容量は「リスト」
  2. 文字化け対策
     → UTF-8 → Shift-JIS → ANSI の順で試す
  3. 上書き・追記の使い分け
     → ログは「追記」、定期更新は「上書き」
よかったらシェアしてね!
  • URLをコピーしました!

この記事を書いた人

目次