Power Automateには「ファイルからテキストを読み取ります」というアクションがあります。

このアクションを使うとき、ファイル名に連続した数字がついたtxtファイルを読み込みたいときはどうすればいいでしょうか?
「file_1.txt」
「file_2.txt」
「file_3.txt」
「file_4.txt」…..
連続した数字というのは、上の例のように接尾辞やサフィックスと呼ばれる数字がついたファイルのことです。
今回はそんなときの対処法を紹介します。
ファイル名に変数を含める方法
やり方:ファイル名に変数を含めたいときはファイルパスの欄に次のように入力します。
C:\Users\konsu\text\file_%変数名%.txt
具体的に言うと、「FileNumber」という変数を次のように設定してあったことを前提とすると、

ファイルパスを指定するときはこんな感じ↓に入力します。

例:「ファイルからテキストを読み取ります」アクションで変数を使う
ここからは「ファイルからテキストを読み取ります」というアクションの中で、変数を含めたパスを設定する手順について説明していきます。
変数を作成する
まずは、ファイルパスに含める変数を作成します。アクションの中から「変数 > 変数の設定」をダブルクリックします。

すると次のような変数の設定画面が表示されます。値の入力欄に好きな値を入力してください。

つぎに変数名を設定します。「NewVar」と書かれた部分をクリックしてください。

すると入力できるようになるので、「NewVar」の部分を好きな変数名に書き換えてください。

今回は「FileNumber」という変数名にしてみました。

変数をファイル名に含める
アクションからの検索欄に「テキストを読み取ります」と入力するとアクションが表示されます。そのアクションをダブルクリックしてください。

すると次のような設定画面が表示されます。

「ファイルパス」の欄にファイルのパスを入力します。FileNumberという変数をファイルパスに含めたいので次のように書きます。

これでテキストを読み取るファイルのパスに変数を含めることができました。
ループの中で使うと便利
ループの中で使うと連番がついたファイル名の読み込みが楽になります。
file_2.txt」
「file_3.txt」
「file_4.txt」…..
例えば次のループを使うと、「file_1.txt」~「file_100.txt」までのファイルを楽に読み込むことができます。

「Loop」をダブルクリックした設定画面で次のよう設定します。

あとは先程の「ファイルからテキストを読み取ります」アクションをLoopの中に入れます。アクションをLoop内にめがけてドラッグアンドドロップするとLoopの中に入れられます。

Loopの中では「LoopIndex」という変数が使えます。この変数はLoopの設定画面で設定したように1周するごとに増えたり減ったりします。
この変数をパス名に使用することで、「file_1.txt」~「file_100.txt」までのファイルを簡単に読み込むことができます。

コメント