RPAコラムー第26回 Power Automate Desktop(Power Automate for desktop)とは?(5/6)

Power Automate Desktop(Power Automate for desktop)コラムも第5回となりました。

前回までで交通費精算書の情報を元にWeb検索、料金を取得するところまで作成しました。

今回は、取得データの加工、記入を行っていきます。

条件分岐や変数の書き換えといった部分が出てくるため、難解な内容となりますが、できる限りわかりやすく解説します。

取得データを置換する

前回取得した料金についた料金ですが、取得した値には”円”が含まれています。

この後片道か往復かで料金を二倍にする処理が入りますが、”円”がついたままでは処理できないので、料金の値から”円”をとる処理を行います。

「テキスト」アクションから「テキストを置換する」を選びましょう。

「解析するテキスト」には、置換したい値を入力します。

この場合は料金の値なので、変数から料金の値を選びましょう。

↑サンプルでは変数名は%AttributeValue%としています。

前回ご自身で設定した値を選択してください。

検索するテキストでは、解析するテキストの中で置換したい文字を入力します。

今回は円という文字だけを取り除きたいので、円と入力します。

わかりやすく「取り除く」と表現していますが、Power Automate Desktop(Power Automate for desktop)では「置換」という処理の通り、正しくは””(何もない値)に置き換える処理を行うことで、余分な文字を取り除きます。

「置き換え先のテキスト」ですが、少しややこしい書き方をします。

何もない値に置き換えたいので、ここには「%””%」と、パーセントで挟んだ表記で記入します。

もしもパーセントで挟まず「””」と書いてしまうと、何もない値ではなく、「””」に置き換えようとしてしまうため、結果が「153 “”」のような形になってしまいます。

また、「%%」と入力すると「%」を参照してしまいます。

何もないというのは例外的な値なので、「%””%で挟むものだ」と認識していただいても問題ありません。

料金を数値に変換する

料金の変数から円を取り除きましたが、まだ数値として認識されたわけではありません。

料金の変数は「テキスト」としてRPAから認識されているので、「数値」として認識してもらう必要があります。

そこで、「テキストを数値に変換」というアクションを選びます。

↑今回は料金の値なのでわかりやすく%Fee%としています。

こちらにも任意の変数名を付けてください。

見た目こそ変化したわけではありませんが、「数値」扱いになったため、この変数を用いて計算ができるようになりました。

条件ごとに操作を変える① 往復の場合

最後に、「片道か往復かによって対応を変える」という処理を行います。

往復した場合は、単純に料金が倍かかるわけですから、取得した料金の変数に2を掛ける処理を行ってから交通費精算書へ貼り付ける必要があります。

ここで、条件分岐のアクション「if」を使い、”往復”と書かれていた場合のみ料金を倍にするように設定します。

往復か片道かを示す値では、24回で設定した%type%が該当します。

なので、「最初のオペランド」には%type%が当てはまります。

↑サンプルでは該当する変数名は%type%としています。

往復の場合は、料金を倍にする必要があります。

料金を倍にする操作を行うには、「変数の設定」を使います。

%Fee%は、取得してきた料金を指定する変数なので、この変数を倍にすることで、料金を倍にすることが出来ます。

なので、「設定」には”%Fee%”を指定しましょう。

 

値を倍にするには×2する必要があります。

 

掛け算の場合は×の代わりに*を用いるので、記載の際は*2となります。

なので、宛先には”%Fee*2%”と記載してください。

 

尚、”%Fee%*2″と記載すると、”%Fee%”、”*2″の2つの値として認識されてしまうので、必ず%で挟んだ中に掛ける処理*2を入れてください。

↑掛ける処理はパーセントで挟んだ中に記載されています。

非常にややこしいですが、今回の処理は「%Fee%の中身を”%Fee%の値の2倍”の値にする」という内容になります。

変数の内容を変えているので、新たな変数ができるわけではありません。

Excelに書き込む

掛ける処理が終わったら、交通費精算書の料金を記載する欄に書き込みましょう。

「Excelワークシートに書き込み」アクションで転記をします。

料金記載欄はF列の7行目です。

なので、「列」欄にはF(6)を、「行」欄には7を記載しましょう。

ここまでで一連の流れは問題なくできる様になりました。

条件ごとに操作を変える② 片道の場合

往復の処理を設定したら、今度は片道の処理も設定しましょう。

今のままでは、「往復の場合は2倍にして書き込むが、それ以外は何が書かれていてもそのまま書き込む」という処理になっています。

 

つまり、「片道」でなくても処理するようになっているので、「往復でない」且つ「片道」の場合に処理をする様に設定しましょう(全く別の内容の場合はエラーで処理が止まります)。

今回は同じ条件分岐のアクションでも、「Else if」を使います。

これは、「ifの条件を満たさないが、こちらの条件は満たす場合」に行われる処理を設定します。

「片道」の条件は、「往復と書かれてはいないが、片道と書かれている場合」に該当します。

設定の仕方自体は、「if」で設定したものと同じです。

「最初のオペランド」には”%type%”を、「2番目のオペランド」には”片道”を入れてください。

「片道」の場合は、料金を倍にする必要はないので、そのまま書き込みをするだけになります。

「if」にある書き込みアクションを右クリックからコピーして、「Else if」内に貼り付けても良いでしょう。

保存・閉じる

あとは保存するだけです。

「Excelの保存」アクションを選び、書き込みをした交通費精算書を保存しましょう。

取得から閉じるところまでを一連でやってしまいたいので、ブラウザとエクセルを閉じる処理も併せて設定します。

それぞれ「Webブラウザーを閉じる」、「Excelを閉じる」で閉じることが出来ます。

ここまでで、業務ロボットが以下の様になっているかと思います。

本コラムまでの内容で、交通費精算書に従って検索~記載までは終了です。

Power Automate Desktop(Power Automate for desktop)の扱いには慣れましたでしょうか。

一連の業務ロボットはこれで作ることが出来ましたが、現在の内容では、最初の1件しか取得しないので、実用は難しいでしょう。

次回は、ここまでで作った業務ロボットをベースに、複数件取得できるようにカスタマイズしていきます。

オンラインセミナー

Power Automate Desktop(Power Automate for desktop)に関するオンラインセミナーを開催予定です。

詳細はこちら

お問い合わせ

名古屋本社

東京本社

【受付時間】9:00~18:00

pagetop

お客様のお悩み承ります。