Power Automate Desktop テキスト 分割

無償化された「Power Automate Desktop」の基本的な使い方や、「テキスト」アクションをつかってできることを中心に解説します。

アクション|テキストの操作一覧

「Power Automate Desktop」で設定できるテキストを操作するためのアクションです。

Power Automate Desktop テキスト 分割

内容 項目
テキストに行を追加 テキストの値に新しい行を追加します
サブテキストの取得 テキスト値からサブテキストを取得します
テキストをパディング 既存のテキストの左または右に文字を追加することによって固定長のテキストを作成します
テキストのトリミング 既存のテキストの先頭または末尾から空白文字(スペース、タブ、改行など)がすべて削除されます
テキストを反転 テキスト文字列の文字の順序を逆にします
テキストの文字の大きさを変更 テキストの文字の大きさを大文字、小文字、タイトルの文字の大きさ、または文の文字の大きさに変更します
テキストを数値に変換 数値のテキスト表現を、数値を含む変数に変換します
数値をテキストに変換 指定された形式を使って数値をテキストに変換します
テキストを datetime に変換 日付/時刻値のテキスト表現を datetime 値に変換します
datetime をテキストに変換 指定されたカスタム形式を使って、datetime 値をテキストに変換します
ランダム テキストの作成 ランダムな文字で構成される指定された長さのテキストを生成します。これはパスワードの生成に役立ちます。
テキストの結合 項目を指定した区切り記号で区切って、リストをテキスト値に変換します
テキストの分割 指定された区切り記号または正規表現によって区切られたテキストの部分文字列を含むリストを作成します
テキストの解析 テキストを解析して、指定されたサブテキストまたは正規表現パターンの最初の出現箇所またはすべての出現箇所を検索します
テキストを置換する 指定されたサブテキストの出現箇所すべてを別のテキストに置き換えます。正規表現と同時に使うこともできます。
正規表現のエスケープ テキスト 文字の最小セット(\, *, +, ?, |, {, [, ], ^, $, ., #, 空白)をエスケープ コードに置き換えてエスケープします

実例|「テキスト」を使ったコード採番

「テキスト」アクションをつかってコード採番の自動化をご紹介します。
システムなどでコード登録をする場合、コードの桁数が固定化されていることを想定しています。

こちらの例では、数字から「10桁の数字」を生成する方法を解説します。

こちらのエクセル ファイルを使います。
A列に入力されている数字を「10桁の数字」に変換して、B列に入力をします。

Power Automate Desktop テキスト 分割

こちらが実行結果です。
B列に「10桁の数字」が入力されていることが確認できます。

Power Automate Desktop テキスト 分割

Power Automate Desktop テキスト 分割

ゼロからはじまる数字を表示させるために、B列の書式は「文字列」に設定されています。

今回のフローはこのようになっています。
以下、ひとつずつ順を追ってご説明をします。

Power Automate Desktop テキスト 分割

手順1|Excel の起動

エクセル ファイル「テキスト‗実例.xlsx」を開きます。

Power Automate Desktop テキスト 分割

参考:【Power Automate Desktop】エクセルでできることや使い方を紹介

手順2|Excel ワークシートから最初の空の列や行を取得

手順1で指定したエクセル ファイル「テキスト‗実例.xlsx」から、「最初の空の列」と「最初の空の行」を取得します。

Power Automate Desktop テキスト 分割

エクセルでデータが入力されている行が「11」、列が「2(B列のこと)」となっています。

Power Automate Desktop テキスト 分割

取得される変数の値はこちらです。
行列ともにその次の値(行が「12」、列が「3(C列のこと)」)が取得されていることが確認できます。

変数名
FirstFreeColumn 3
FirstFreeRow 12

手順3|Loop

手順2で取得した変数「FirstFreeRow」をつかって、Loopアクションで繰り返し処理を指定します。

Power Automate Desktop テキスト 分割

こちらでは、パラメーター「終了」に「%FirstFreeRow – 1%」と入力をしています。

先ほど取得した変数「FirstFreeRow」には値「12」が代入されていますので、そこから「1」を差し引いた数字(「11」)を指定しています。

参考:【Power Automate Desktop】ループ処理の使い方を解説

手順4|Excel ワークシートから読み取り

手順3で取得した変数「Loopindex」をつかって読み取り値を設定します。

パラメーター「先頭列」を「1」と入力することによって、A列を指定しています。
また、パラメーター「先頭行」を変数「Loopindex」とすることによって、繰り返し処理がおこなわれて「2から11まで」の値が順番に入力されます。

Power Automate Desktop テキスト 分割

手順5|テキストをパディング

こちらの「合計長」でコードの桁数となる「10」を指定しています。

Power Automate Desktop テキスト 分割

手順6|Excel ワークシートに書き込み

手順5で生成された変数「PaddedText」の値をエクセルに書き込みます。

ここでは「列」に「2」と入力することによって、B列を指定しています。
「行」については、手順4と同じで、繰り返し処理がおこなわれて「2から11まで」の値が順番に入力されます。

Power Automate Desktop テキスト 分割

手順6|Excel を閉じる

さいごにエクセル ファイルを閉じます。

Power Automate Desktop テキスト 分割

「テキスト」の具体的な使い方

かんたんな具体例を用いて「テキスト」アクションの使い方をご紹介します。

テキストに行を追加

テキストの値に新しい行を追加します。

例のとおり、「元のテキスト」に「追加するテキスト」を加えるときに使用します。

Power Automate Desktop テキスト 分割

新しい行にテキストが追加されていることが確認できます。

Power Automate Desktop テキスト 分割

サブテキストの取得

テキストからサブテキストを取得します。

「元のテキスト」から指定した条件にもとづいて文字を抽出します。

Power Automate Desktop テキスト 分割

こちらは文字「あいうえお」から「えお」の部分を抽出しています。

ここでは、文字の位置「3」としても、前から3番目の「う」ではない点にご注意ください。
指定した文字の位置の「つぎの文字」から取得が開始されます。

Power Automate Desktop テキスト 分割

テキストをパディング

既存のテキストの左または右に文字を追加することによって固定長のテキストを作成します。

Power Automate Desktop テキスト 分割

こちらでは、テキストの長さである「合計長」を「10」に指定しています。
そのうえでテキスト値「1234」にテキスト値「0」を追加しています。

例えば、「10桁に固定されたコード番号」を採番する場合などに使用します。

Power Automate Desktop テキスト 分割

テキストのトリミング

既存のテキストの先頭または末尾から空白文字(スペース、タブ、改行など)がすべて削除されます。

Power Automate Desktop テキスト 分割

こちらでは、テキスト「あいうえお 」(「お」の右側に全角スペースが3つあります)をトリミングした結果、テキスト「あいうえお」が表示されました。

Power Automate Desktop テキスト 分割

テキストを反転

テキスト文字列の文字の順序を逆にします。

Power Automate Desktop テキスト 分割

テキスト「あいうえお」を指定した場合、テキスト「おえういあ」が取得されます。

Power Automate Desktop テキスト 分割

テキストの文字の大きさを変更

テキストの文字の大きさを大文字、小文字、タイトルの文字の大きさ、または文の文字の大きさに変更します。

Power Automate Desktop テキスト 分割

こちらでは、変更できる4種類の「変換先」の結果について、2つの例をつかって確認をします。

例1では「Sample text」を4種類それぞれの「変換先」をつかって変更しています。
また、例2では「sample text」をおなじように変更しています。

変換先 例1:「Sample text」 例2:「sample text」
大文字 SAMPLE TEXT SAMPLE TEXT
小文字 sample text sample text
タイトルの文字の大きさ Sample Text Sample Text
文の文字の大きさ Sample text Sample text

テキストを数値に変換

テキスト ファイルの内容を読み取ります。

今回、こちらのテキスト ファイルを使用してご紹介します。

Power Automate Desktop テキスト 分割

まず、「ファイルからテキストを読み取ります」をつかって値を取得します。

Power Automate Desktop テキスト 分割

取得された値(変数の値:FileContents)がこちらです。
データの型が、「数値」ではなく「テキスト値」となっています。

Power Automate Desktop テキスト 分割

つぎに、「テキストを数値に変換」をつかって、先ほど取得した値(変数の値:FileContents) を指定します。

Power Automate Desktop テキスト 分割

こちらが結果です。
データの型が、「テキスト値」から「数値」に変わっていることが確認できます。

Power Automate Desktop テキスト 分割

数値をテキストに変換

指定された形式を使って数値をテキストに変換します。

先ほどの例で取得した値(変数の値:TextAsNumber)をつかってご紹介します。

Power Automate Desktop テキスト 分割

「変換する数値」にて、うえの変数「TextAsNumber」を指定します。

Power Automate Desktop テキスト 分割

データの型が「数値」から「テキスト値」に変換されていることが確認できます。

Power Automate Desktop テキスト 分割

テキストを datetime に変換

日付/時刻値のテキスト表現を datetime 値に変換します。

こちらのテキスト ファイルを使用してご紹介します。

Power Automate Desktop テキスト 分割

「ファイルからテキストを読み取ります」をつかって値を取得します。

Power Automate Desktop テキスト 分割

つぎに「テキストを datetime に変換」にて、取得した変数「FileContents」を指定します。

Power Automate Desktop テキスト 分割

こちらが出力結果です。
データの型が「Datetime」となっていることが確認できます。

Power Automate Desktop テキスト 分割

datetime をテキストに変換

指定されたカスタム形式を使って、datetime 値をテキストに変換します。

ひとつ上の「テキストを datetime に変換」の例で出力された変数「TextAsDateTime」を、パラメータ「変換する datetime」で指定します。

Power Automate Desktop テキスト 分割

Power Automate Desktop テキスト 分割

こちらがそれぞれの「標準形式」ごとの結果です。

標準形式 結果
短い日付形式 2021/8/30
長い日付形式 2021年8月30日
短い時刻形式 0:00
長い時刻形式 0:00:00
完全な datetime (短い時刻形式) 2021年8月30日 0:00
完全な datetime (長い時刻形式) 2021年8月30日 0:00:00
一般的な datetime (短い時刻形式) 2021/8/30  0:00
一般的な datetime (長い時刻形式) 2021/8/30  0:00:00
並べ替え可能な datetime 2021-08-30T00:00:00

ランダム テキストの作成

ランダムな文字で構成される指定された長さのテキストを生成します。これはパスワードの生成に役立ちます。

こちらの条件にて実行します。

Power Automate Desktop テキスト 分割

5回テストをしましたが、結果はつぎのようになりました。

回数 結果
1 CHy$4
2 u21kTvg
3 xmNmig5V
4 .zIhd95
5 68Vl!H-,

Power Automate Desktop テキスト 分割

こちらはランダムで値を生成することから、やはり実行ごとに異なった結果になります。パスワードの自動作成に役立ちますが、忘れないようにメモなどで残しておいてくださいね。

テキストの結合

項目を指定した区切り記号で区切って、リストをテキスト値に変換します。

例としてこちらのリストを使用します。

Power Automate Desktop テキスト 分割

うえの変数「List」を結合するリストとして指定します。

Power Automate Desktop テキスト 分割

こちらが出力結果です。

Power Automate Desktop テキスト 分割

なお、「リスト項目を区切る区切り記号」を「標準」とした場合は、こちらの内容を選択することができます。

  • スペース
  • タブ
  • 新しい行

テキストの分割

指定された区切り記号または正規表現によって区切られたテキストの部分文字列を含むリストを作成します。

こちらの変数「NewVar」をつかって確認をします。

Power Automate Desktop テキスト 分割

「分割するテキスト」に、変数「NewVar」を指定します。

Power Automate Desktop テキスト 分割

こちらが出力結果です。
「カスタム区切り記号」で指定した区切り記号「&」によってリストが分割されています。

Power Automate Desktop テキスト 分割

「正規表現」とは、文字の並びをひとつのパターンで表現する方法です。

正規表現を使うことによって指定したい文字を検索することができます。

例えば、郵便番号を表す正規表現は「[0-9]{3}-[0-9]{4}」と表現されます。
こちらは「0~9の数字が3つ」と「-(記号のハイフン)」と「0~9の数字が4つ」といった要素を組み合わせたものです。

このようにパターンをつかって文字を表現することを正規表現といいます。

テキストの解析

テキストを解析して、指定されたサブテキストまたは正規表現パターンの最初の出現箇所またはすべての出現箇所を検索します。

こちらの内容で確認をします。

Power Automate Desktop テキスト 分割

結果はこちらです。
「検索するテキスト」にて指定された正規表現に一致する値が変数「Match」に代入されています。

Power Automate Desktop テキスト 分割

もうひとつの変数「Position」の結果はこちらです。

こちらでは、解析するテキストの位置が表示されます。
今回の例では、”電話番号は”という6文字に対応した数字です。

Power Automate Desktop テキスト 分割

なお、元のテキストの中に指定文字が見つからない場合は「-1」が表示されます。

テキストを置換する

指定されたサブテキストの出現箇所すべてを別のテキストに置き換えます。正規表現と同時に使うこともできます。

こちらの例をつかって確認をします。

Power Automate Desktop テキスト 分割

出力結果はこちらです。

Power Automate Desktop テキスト 分割

なお、「エスケープ シーケンスをアクティブ化」にて、特別なシーケンスを使用するかどうかを指定することができます。

たとえば、置換テキスト内の ‘\t’ はタブとして解釈されます。

置き換え先のテキストを「非\t公\t開」とした場合、出力結果は「電話番号は「非 公 開」です。」となります。

Power Automate Desktop テキスト 分割

こちらの例でご紹介したタブ文字「\t」の表記については、テキストエディタなどの種類によってタブ幅が異なりますのでご注意ください。

こちらでは「半角スペース1つ」が表示されています。

正規表現のエスケープ テキスト

文字の最小セット(\, *, +, ?, |, {, [, ], ^, $, ., #, 空白)をエスケープ コードに置き換えてエスケープします。

エスケープ コードとは、つぎに続く文字に別の解釈をすることを示すための「文字」のことです。

具体的には半角文字の「\(バックスラッシュ)」を使います。
フォントの設定によっては「\(半角の円マーク)」で表示される場合もありますが、おなじような使い方をします。

例えば、文字の中に「改行」をつかった場合の表示例を確認してみましょう。

Power Automate Desktop テキスト 分割

まず、「ファイルからテキストを読み取ります」でテキスト ファイルを読み取ります。

Power Automate Desktop テキスト 分割

つぎに、「正規表現のエスケープ テキスト」にて指定します。

Power Automate Desktop テキスト 分割

さいごに、「テキストをファイルに書き込みます」でテキスト ファイルを書き込みます。

Power Automate Desktop テキスト 分割

出力結果はこちらです。
改行部分が「改行コード」で表示されています。

Power Automate Desktop テキスト 分割

まとめ

こちらでは基本的なテキスト操作について、例をもちいながら具体的な使い方をご紹介しました。

「テキスト」操作だけをつかって自動化のフローを作成することは少ないかと思います。
その他のアクションについてはこちらでご紹介しておりますので、よろしければご活用ください。

こちらに「Power Automate Desktop」でできることや基本的な操作方法をまとめていますので、もしご興味がございましたら一度ご覧ください。

Powerautomate Desktopの改行コードは?

Power Automate Desktop には、タブや改行を表すコードがない。 改行コードは「テキストに行を追加」で挿入できる。 ただこのステップで追加されるのは \r\n であり、 \n だけ追加することはできない。

パワーオートメイトのテキスト置換は?

利用方法 「アクション」の「テキスト」より、「テキスト置換」をドラッグします。 パラメータの設定画面が表示されるので値を指定します。