Power Automate Desktop(PAD)で文字列や数値を比較する方法について解説します。
値を比較するフロー
まず、値を比較する基本のフローは以下のようになります。
if文で比較をし、値が一致しているかどうかをメッセージボックスで表示するフローです。
PADで数値を比較する方法
PADで数値を比較する場合、単純に値の比較になるので以下の等号・不等号を使うことができます。
比較演算子 | 概要 |
---|---|
=(等しい) | 値が等しいか |
<>(と等しくない) | 値が等しくないか |
>(より大きい) | 片方の値がもう片方より大きいか |
>=(以上である) | 片方の値がもう片方以上か(等しいも含む) |
<(より小さい) | 片方の値がもう片方より小さいか |
<=(以下である) | 片方の値がもう片方以下か(等しいも含む) |
数値の比較では、整数は勿論、少数や負の数の比較も可能です。
上記の実行結果は以下のようになります。
PADで文字列を比較を比較する方法
PADで文字列を比較する方法について解説します。
文字列どうしが等しいか比較する
文字列どうしが等しいか比較する場合、If の条件に等号(=)を設定します。
数値と文字列を比較したらどうなる?
数値の1と、文字列の’1’を比較した場合、異なる値とみなされます。
【注】空白も比較対象となる
以下の2つの文字列を比較すると、異なる値という結果になります。
先頭や末尾に入っている半角・全角スペースも比較対象となりますので、注意が必要です。
もし、比較するデータの先頭や末尾にスペースが入っている可能性がある場合は、「テキストのトリミング」アクションを追加して、文字列のトリミングをしてから比較するようにしましょう。
文字列の長さを比較する
文字列の長さを比較する場合、If の条件に不等号を設定します。
実行結果は、文字数が長いほうが大きいとみなされます。
文字列の長さが等しい場合はどうなる?
文字列の長さが等しいけれど、文字列の中身が異なる場合は、50音順やアルファベット順の遅いほうが「大きい」と見なされます。
たとえば、
- 「あああ」と「いいい」→ 「いいい」のほうが大きい
- 「あいう」と「あうい」→ 「あうい」のほうが大きい
- 「aaa」と「ccc」 → 「ccc」のほうが大きい
ちなみに、文字数が同じ英語と日本語を比較した場合、日本語のほうが「大きい」と見なされました。
PADで日付の比較をする方法
PADで日付の比較をする場合、If の条件に等号/不等号を設定します。
このとき、変数がDatetime型になっていることを確認してください。
変数で設定する場合は、以下のように表記します。
%D'2024/02/05 15:00:00'%
上記フローを実行すると、以下のような結果になります。
PADで日付・日時を比較する詳細は、以下記事にて解説していますのであわせてご参照ください。
注意点
異なる型どうしは比較できない場合がある
異なる型どうしでは比較できない場合があります。たとえば、テキスト型とブール型は比較することができません。
リストやデータテーブルは比較できない
リスト(1次元配列)やデータテーブル(2次元配列)は、If を使って比較することはできません。
まとめ
今回は、Power Automate Desktop(PAD)で文字列や数値を比較する方法について解説しました。
当ブログでは、Power Automate、Power Automate Desktopに関する記事を他にも投稿しています。もし、「このようなことが知りたい」「こんなフローの作り方が知りたい」等ございましたら、問い合わせやコメントからお気軽にご連絡ください。
コメント