PowerAutomate アクション コネクタ~組み込み編~その②データ操作

ホーム » PowerAutomate » PowerAutomate アクション コネクタ~組み込み編~その②データ操作

第二回 データ操作編

前回、①変数を勉強したので、今回は、②データ操作の勉強をしてみようと思います。
今回は、例となるフローを作成しながら使い方を見ていきます。

①変数

②データ操作

③コントロール

ここで作成する内容について

主にデータ操作のコネクタ(アクション)を使い、「CSVファイル」を作成します。
まず、以下のフローでCSVファイルを作成し、あとから修正していきます。
このフローでは、データ操作の中から以下を利用します。

  • CSVテーブルの作成
  • アレイのフィルター処理
  • JSONの解析(後で修正の際に使います)
修正前のCSVファイル作成フロー

まず、テスト用に以下のような都道府県テーブルをExcelで作成しました。
図にも書きましたが、PowerAutomateクラウドフローにおいて、Excelの表は、予めテーブルにしておく必要があります。
後からでも、OfficeScriptを使ってテーブル化できますが、先にテーブル化しておくとフロー作りが楽になります。
まだ「SharePointサイト」を作成していないので、ファイルは、OneDriveに保管しました。
ファイルが、SharePointに保管されている場合は、SharePoint=OneDrive と読み替えて頂ければ、ここのフローはほぼ同じように動作すると思われます。

CSVファイルの作成フロー

都道府県のテーブルを準備。
このExcelファイルをOneDrive
に保存。

テーブル名は、以下の場所で確認や変更ができます。
テーブル内のどこかを選択して、テーブルデザイン→テーブル名


■トリガーに以下を使用します。
「手動でフローをトリガーします」
■新しいステップを追加
「Excel Online(Business)」→
「表内に存在する行を一覧表示」
*設定値*
[オプションの表示 ] ボタンを押して、
図のように、

◆場所
◆ドキュメントライブラリ
◆ファイル
◆テーブル に、1のファイルやテーブルを指定します。

※Excel Onlineの(Onedrive)は、パーソナルユーザーアカウントでのみ利用可能です。

アレイのフィルター処理

■新しいステップを追加
「データ操作」→
「アレイのフィルター処理」
*設定値*
① 1つのフィルターの場合
差出人:Value
値の選択:地方
次の値に等しいを選択し、「関東」とします。

②2つ以上のフィルターの場合
差出人:Value
値の選択:タイプ1
詳細設定モードで編集を選択し、「@or(equals(item()?[‘地方’], ‘関東’),equals(item()?[‘地方’], ‘東北’))とします。

@orいずれかにあてはまる
equals次の値に等しい
※①の1つフィルターを作成し、詳細設定モードで編集を選択するとExcelでいう関数の状態で表示されるので、それを編集すると簡単に作れそう。
今後、詳細設定モードで使用する条件式を使いながら勉強したいと思います。

詳細設定モードで使用する条件式の使い方は、Microsoftさんのページをご覧下さい。

Power Automate の条件で式を使用する – Power Automate | Microsoft Learn

CSVテーブルの作成

■新しいステップを追加
「データ操作」→
「CSVテーブルの作成」
*設定値*
開始:本文(3のアレイのフィルター処理から選択)


■新しいステップを追加→「OneDrive」→「ファイル作成」
*設定値*
フォルダーのパス:保存先フォルダ
ファイル名:任意のファイル名
ファイルコンテンツ:出力(前ステップのCSVファイルの作成内)を選択する。

列を自動としておく

出来上がったファイルを開きます。
”東北”と”関東”でフィルターされていますが不要な文字が入ってます。
あとで、加工するのもありかもしれませんが、邪魔なのでこの場で解決します。

CSVファイルの仕上がりに不満がありますので、2点 修正します。

修正①
→アクション追加

3と4の間に「JSONの解析」を追加します。

下準備として、テストした結果から、JSONのサンプルとなる箇所を選択して、コピーします。
具体的なコピー元は、次を参照のこと。


JSONサンプルを作成するために
方法1開いたファイルの [ から ] まで選択してコピー
の場所。広範囲
方法2{ から } を選択してコピー
※図では、青色反転している箇所
サンプルの作成する際にペーストする前に []を追加する

JSONの解析

■新しいステップを追加
「データ操作」→
「JSONの解析」を選択

コンテンツ:「本文」(「アレイのフィルター処理」配下)
そして、「サンプルから生成」をクリック

*設定値*
サンプルJSONペーロードの挿入にペーストし、サンプルJSONを作成する(今回は方法2を実施)
→ 完了 をクリック

サンプルから自動で生成されたスキーマ

修正②
アクション修正

4で作成した「CSVテーブルの作成」を修正します。
*設定値*
開始:本文を JSONの解析 配下のものに変更します。
列:(オプションの表示ボタンを押し)自動→カスタムに変更
ヘッダ:任意のテキストを入力
値:番号、名前、地方、地域区分(以前の手順からパラメータを挿入「Jsonの解析」から選択
※ヘッダを好みのものに変更しました。

出来上がったファイル

ファイルをメモ帳で開きました。
希望の形で出力されています。

修正した、フローはこのようになりました。

修正後のCSVファイル作成フロー

選択の使い方

選択という項目は、これも使い勝手がよさそうです。
上記では、JSONの解析を実行して値を取り出してみましたが、「選択」でも同じような使い方ができることが分かりました。

選択

2 の「Excel Online(Business)「表内に存在する行を一覧表示」の後に「選択」を追加し図のように値を入れました。
JSONとして処理され、この後、「CSVテーブルの作成」に放り込むことができました。

では、フローの一部を以下のように「CSVテーブルの作成」から「HTMLテーブルの作成」に変更すると?

ファイルの作成で、ファイル名を〇〇〇〇.htmlにすると、html(テーブルタグだけでしたが)のファイルが出来上がり、ブラウザで開けました。

HTMLテーブルの作成

フローの一部を以下のように「CSVテーブルの作成」から「HTMLテーブルの作成」に変更します。
ファイルの作成で、ファイル名を〇〇〇〇.htmlにすると、html(テーブルタグだけでしたが)ファイルが出来上がり、ブラウザで開くと、テーブルとして表示されました。

「CSVテーブルの作成」から「HTMLテーブルの作成」に変更

結合と作成の使い方

作成

今回、「作成」は配列変数に入れた結果を表示させるために使いました。
しかし、本来は、同じ入力を繰り返し使う際に利用するようです。

結合

「作成」で出力された配列を図ように”ちゃん、” で結合しました。

結果が知りたいので、最後に、OneDriveにファイルを作成するアクションを追加し、ファイルを開いてみました。
文字列の並びのようになっています。

データ操作について、いろいろ調べてみたものの、「結合」については、よい使い方を思いつくことができませんでした。分からないなりに、「調べる→試してみる→失敗する」をループすることで、やっと成功にたどり着けたり、悩みながらも前進していけるので、今回も楽しかったです。
次回は、③コントロールですね。
以前少しチャレンジしましたが、予想通りの動作をしなかったので、調べる~失敗する、までのループを沢山繰り返す予感がします。頑張ろう。。。

返信を残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA