広告

Power Automate Desktop:文字列型変数の使い方。文字列の検索、比較、結合方法など

Power Automate Desktop

初めてRPAツールを触る方や基本的なプログラミング学習向けに、Power Automate Desktopの文字列変数ついて解説しています。ご自身の環境で動作可能な設定画面などを交えて説明していますので、Power Automate Desktopを使った自動化フローを作る際の参考にしてみてください。

マイクロソフトの無償RPA(自動化ツール)である「Power Automate Desktop」の文字列変数ついて解説しています。

文字をつなぎ合わせたり(文字列結合)、検索したり、比較したりするなど、文字列の操作は自動化フローの構築に欠かせない要素のため文字列変数の使い方をぜひマスターしてみてください。

無料自動化ツールの「Microsoft Power Automate Desktop」について、そもそもの解説や導入方法についてはPower Automate Desktopについてをお読みいただくと基本的な使い方などが確認できます。

こちらでは、Power Automate Desktopで使われる変数のうち「文字列」の変数に関する詳細な解説を行っています。

そもそもの「変数って何?」「変数の種類や使い分けは?」などについては以下のページで詳しく解説していますので、まだご覧になっていない方はこちらもぜひご覧ください。

文字列を定義する

Power Automate Desktopでは変数として文字列や数値、Bool型などのほか、リスト型などの複雑な構造を持つ変数を利用することができます。

文字列を変数として定義するには、「変数の設定」アクションなどで文字列を直接 [宛先] にして設定します。

数値などを文字列として扱う(ハードコード)

数字を変数の値として指定した際、その内容が数値として読み取れる場合に自動的に数値型の変数に変換される場合があります。

例えば「009」という文字列を変数として定義したい場合、そのまま009の文字を「変数の設定」アクションの [宛先] に指定しても、保存時に自動的に数値の「9」に変換されてしまいます。

このようなときは%'~'%の表記を使って%'009'%のように指定することで引用符の内側を文字列として定義することができます。

また、ハードコードの活用方法として、上記のような0から始まる数字文字列のほかに「何もない文字列(空文字)」を指定することなどもできます。

通常、変数を指定する場合、[宛先] に何も入力されていないとエラーが発生します。

このような場合、%''%を宛先として指定することで、エラーを回避して空文字を作ることが可能です。

この空文字は「テキストを置換する」アクションなどに応用することで、検索した文字列を削除することができます。

この詳細はテキストを空白で置換する(検索テキストを削除する)でご紹介していますのであわせてご覧ください。

文字列を結合する

文字列同士を結合する(つなげる)には「+」の文字列演算子を使用します。「&」記号などは使えません。

%hoge%が「ほげほげ」、%fuga%が「ふがふが」のとき。「ほげほげふがふが」の文字列を得るには以下のように記述します。

%hoge + fuga%

また、変数をそのまま並列で列挙することでそのまま結合した文字列が渡されるようなので、下記でも同様の結果が得られるようです。

%hoge%%fuga%

数値型との混在

数値型の変数が混在している場合、演算結果が変化する場合がありますので注意してください。

%hoge%が「ほげほげ」(文字列型)、%fuga%が「1」(数値型)のとき、

%hoge + fuga%

は「ほげほげ1」となります。

一方、%hoge%が「1」(数値型)、%fuga%が「2」(数値型)のときは双方が数値型のため、

%hoge + fuga%

は算術演算の結果である「3」となります。

もし、文字列として結合した「12」を結果として取得したい場合、演算子の使用ができないため、

%hoge%%fuga%

とするか、もしくは前述のハードコードを使って%hoge%を「%’1’%」(数値型)、%fuga%を「%’2’%」などと指定します。(この場合数値としての算術演算はできなくなります)

文字列を抜き出す

文字列の一部を抜き出して別の変数に格納するために、「サブテキストの取得」というアクションが用意されています。

サブテキストの取得」というアクションの使い方については「サブテキストの取得アクションを使って文字列を抜き出す方法」をご参照ください。

文字列で「%」記号を使う

変数では「%」が開始終了を表す特殊な記号であるため、「」そのものを文字列として扱いたい場合は「%%」と記述する必要があります。

「果汁15%」のような文字列を変数に格納したい場合は果汁15%%などと入力します。

文字列を検索する

文字列変数の内部を検索するためのアクションとして「テキストの解析」というアクションが用意されています。

テキストの解析」アクションで文字を検索する際の設定例は以下のようになっています。

[検索するテキスト] を「」とし、[解析の開始位置] を「0」とすることで、一番最初に登場する「【」の位置を取得できます。

そして、このアクションで生成された変数が-1以外の値であった場合、文字列が見つかったと判定されていますので、「if」アクションなどを使ってステップを分岐させることなどが可能です。

文字列を比較する

文字列同士が一致しているかどうかを比較する場合は「=(等しい)」「!=(等しくない)」の比較演算子が使えます。

%hoge = fuga%

結果はBool形で返されるため、比較する文字列同士が同じならば「True」、異なるならば「False」が格納されます。

日付や時刻を自由な書式で文字列に出力する

日付や時刻を自由な書式で文字列に出力するには、「datetimeをテキストに変換」アクションを使って行うことができます。

datetimeをテキストに変換」アクションの使い方については「日付時刻(datetime)の書式を指定してテキストに変換する」をご参照ください。

n番目の文字を取り出す

文字列からn番目の文字を1文字だけ取り出すような場合は [ ] による指定が可能です。

%hoge[2]%などとすることで、文字列変数%hoge%の3番目※の文字を取り出すことができます。

※プログラムの作法的な習慣なのですが、この [] で指定する値は1つ目の要素をゼロ「0」として数えます。

Power Automate Desktopではプログラミングの慣習に倣って0からスタートするカウント方法と、1からスタートするカウント方法が混在しているためご注意ください。

まとめ

Power Automate Desktopの文字列変数について解説しました。

クラベルではほかにもテンプレートとして使えるPower Automate Desktopのフローサンプルを解説付きでご紹介していますのでぜひ参考にしてみてください。

お読みくださりありがとうございました。今回の内容が少しでもお役に立てば幸いです。

コメント

タイトルとURLをコピーしました