この記事では、Power Automate Desktop の IF 条件を使って、
Excel のセル内容を判定し、自動で処理を行う方法をご紹介します。
👇こちらのYouTube動画では、設定手順をわかりやすく解説しています。
【基礎】Power Automate DesktopのIF条件で「含む」を判定する方法
今回のフローは次のような流れになります。
1つずつフローを解説していきます。

シート名は 「Orders」 で、3つの列で構成されています。
IF 条件でA列に「りんご」を含むかどうかを判定します。
「りんご」を含む場合のみ、C列に「該当」という文字を自動で書き込みます。

1. 「Excel の起動」
対象のExcelパスを指定します。

2. 「変数の設定」
後ほど Excel へ書き込む際に行番号が必要になるため、
「変数の設定」 を使って行番号カウンターを準備します。
・変数名:i
・値:0

3. 「アクティブな Excel ワークシートの設定」
次に、処理対象となるシートをアクティブにします。
今回は 「Orders」シートを使用するため、ワークシート名:Orders を選択します。

4. 「Excel ワークシートから読み取る」
シート内のデータをまとめて取り込むため、
「Excel ワークシートから読み取る」 を追加し、
取得したデータを ExcelData という変数に保存します。
これにより、Excel の全行データを配列として扱えるようになります。

5. 「For each」
次に、読み取ったデータを 1 行ずつ処理 するため、「For each」 を使用します。
・保存先の変数名:CurrentRow

6. 「変数を大きくする」
行番号を 1 行ずつ進めるため、
「変数を大きくする」 を使い、i を 1 増やします。
これで、現在処理中の Excel 行番号が正しくカウントされます。

7. 「IF」
ヘッダー行を処理しないように行番号の条件を追加します。

8. 「IF」
IF 条件で Excel の A 列に含まれる文字列をチェックします。
・%CurrentRow[0]% は Excel の A列(商品名) を表します
・商品名に 指定したキーワードが含まれている場合 に条件が成立します
この判定が True となった行に対して、後続の処理を実行します。

9. 「Excel ワークシートに書き込む」
IF 条件が True の場合、C 列(処理結果)に「該当」と書き込みます。
・列:C(C列)
・行:%i%
・書き込む値:該当

ステータスが「完了」の行だけに、自動的に「済」という文字が入力されます。

【基礎】Power Automate DesktopのIF条件で「含まない」を判定する方法
今回のフローは次のような流れになります。

シート名は 「Orders」 で、3つの列で構成されています。
今回は IF 条件で、A列の商品名に指定したキーワードが含まれていないかを判定します。
キーワードが含まれていない行のみ、C列へ 「該当」 と自動で書き込みます。

フローの構成は、最初にご紹介した
「【基礎】Power Automate DesktopのIF条件で「含む」を判定する方法」とほぼ同じです。
違うのは フローの8番目の IF文 のみですので、その部分のみ解説します。
=======================
「IF」
IF 条件で A 列の商品名をチェックします。
・%CurrentRow[0]% は Excel の A列(商品名) を表します
・商品名に 指定したキーワードが含まれていないか を判定します

商品名に「りんご」が含まれていない行だけに、
自動的に「該当」と入力されます。

【応用】Power Automate DesktopのIF条件で「含む」+複数条件(AND)を判定する方法
今回のフローは次のような流れになります。

シート名は 「Orders」 で、3つの列で構成されています。
今回は IF 条件で A列の商品名に「りんご」が含まれているか、
さらに B列の価格が150以上か の 2 つを判定します。
この複合条件を満たした場合のみ、C列に 「該当」 という文字を自動で書き込みます。

フローの構成は、最初にご紹介した
「【基礎】Power Automate DesktopのIF条件で「含む」を判定する方法」とほぼ同じです。
違うのは フローの8番目の IF文 のみですので、その部分のみ解説します。
=======================
「IF」
商品名(A列)と価格(B列)の両方を評価し、
条件を同時に満たすかどうかをチェックします。
判定内容は次の2つです:
・A列の商品名 → 「りんご」が含まれている
・B列の価格 → 150 以上である
・最初のオペランド
%Contains(CurrentRow[0], 'りんご', True) AND CurrentRow[1] >= 150%
(Contains の 引数3 True とすることで、大小の違いを無視する)
・2番目のオペランド
TRUE
このように 2 つの条件を同時に満たすかを IF の式で記述します。

条件に一致した行(商品名に「りんご」が含まれていて、
なおかつ価格が150以上 の場合)のみ、結果欄に「該当」と自動入力されます。

【応用】Power Automate DesktopのIF条件で「含まない」+複数条件(AND)を判定する方法
今回のフローは次のような流れになります。

シート名は 「Orders」 で、3つの列で構成されています。
・A列の商品名に「りんご」が含まれていない(NOT 条件)
・B列の価格が 150 以上である
これらすべての条件を満たした行に対して、C列へ 「該当」 と自動で書き込みます。

フローの構成は、最初にご紹介した
「【基礎】Power Automate DesktopのIF条件で「含む」を判定する方法」とほぼ同じです。
違うのは フローの8番目の IF文 のみですので、その部分のみ解説します。
=======================
「IF」
除外条件(NOT)と複数条件 を組み合わせた判定を行います。
判定する内容は次の 2 点です:
・A列の商品名に「りんご」が含まれていない
・B列の価格が 150 以上である
・最初のオペランド
%NOT (Contains(CurrentRow[0], 'りんご', True)) AND CurrentRow[1] >= 150%
(Contains の第3引数を True にすることで、大文字小文字の差を無視して判定できます。)
・2番目のオペランド
TRUE

条件に一致した行(商品名に「りんご」が含まれていて、
なおかつ価格が150以上 の場合)のみ、結果欄に「該当」と自動入力されます。

この記事がお役に立ちますと幸いです。
・【Power Automate Desktop】RPA実践テクニック・使用例まとめ

「シゴトがはかどる Power Automate Desktopの教科書」
業務自動化ツールの初心者でも使えるように、初歩から丁寧に解説
繰り返し発生する作業を本書で自動化して仕事を効率化しましょう!!