Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Power Automateで配列を扱う②
Search
MiyakeMito
March 05, 2022
Technology
5.3k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Power Automateで配列を扱う②
MiyakeMito
March 05, 2022
More Decks by MiyakeMito
See All by MiyakeMito
Power Automateアップデート情報
miyakemito
0
310
マルチステージとAI承認について
miyakemito
0
170
Copilot Studioについて
miyakemito
7
10k
Dataverseの検索列について
miyakemito
2
1.9k
AI Builder について
miyakemito
3
1.2k
Microsoft Copilot Studio についてざっくり説明
miyakemito
2
1.9k
Power Automateのデータ操作(Data Operation)について (Ver.モダンデザイナー)
miyakemito
5
4.1k
JSON攻略法.pdf
miyakemito
13
7.3k
ガンダムBotを1分でつくってみせろよ
miyakemito
1
920
Other Decks in Technology
See All in Technology
[ChatGPT Work LT]事務作業が苦手な人のための バックオフィスの「半」自動化
chimaki_iot
0
310
同じWAFが、攻撃の“形”は弾く── 正当な“形”の不正は通す
kuroneko13
0
230
JavaScript 研修 (2026)
recruitengineers
PRO
2
610
老害フォレンジッカーはAI羊の夢を見るか?
tadmaddad
0
340
侵入は突然に 〜 IoTマルウェアと悪用される家庭の機器 ~ / When Intrusion Strikes: IoT Malware and the Abuse of Home Devices
nttcom
0
5.9k
FPGAが実現する遠方宇宙の高空間分解能天体撮影 -大型地上望遠鏡の視力を補正する「補償光学」とは?-
komei_mt
0
310
【CEDEC2026】Creative Approaches to Localizing the Dialects and Unique Speech of Umamusume: Pretty Derby Characters in English
cygames
PRO
3
25k
What's new in Go 1.27?
ciarana
0
210
35分でわかるEffective Platform Engineering
nwiizo
3
170
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
19k
Kiro Crew入門 - 常駐エージェントの仕組みと使いどころ / Intro to Kiro Crew
k_adachi_01
1
370
少人数チームで実現する、大規模AWSサーバーレス基盤における"揺らがない"信頼性運用
maimyyym
1
110
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Rails Girls Zürich Keynote
gr2m
96
14k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
710
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
620
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
270
Statistics for Hackers
jakevdp
799
230k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
250
We Are The Robots
honzajavorek
0
300
Claude Code のすすめ
schroneko
67
230k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
250
Transcript
Power Automate における配列② 気ままに勉強会 #09
今日の目標 関数を使って 配列を使いこなそう
アジェンダ 1. 配列(array)とは 2. 関数(function)とは 3. Power Automateの配列関数 4. Power
Automateで配列操作
Miyake Mito https://www.icsoft.jp/ @MiTo60448639 https://qiita.com/MiyakeMito
本日の参考サイト ▪ Azure Logic Apps および Power Automate のワークフロー式関数のリファレン ス
ガイド https://docs.microsoft.com/ja-jp/azure/logic-apps/workflow-definition- language-functions-reference ▪ Power Automateで文字列を1文字ずつに分割する方法 https://qiita.com/h-nagao/items/e0153b9a2c700cc2c95e ▪ Power Automateでのソート (Loopなし) https://qiita.com/h-nagao/items/765826be914fbf08bd02 ▪ Power Automate で配列をシャッフルする方法 https://mofumofupower.hatenablog.com/entry/2020/10/06/160200
配列(array) とは
配列とは ① • 変数(値を入れておく箱)が複数つながったもの • それぞれの箱は、配列の「要素」と呼ばれます • また配列の要素には、「添え字」という番号が割り当てられています • Power
Automateでは添え字を0から数えます 変数 0 1 2 3 4 5
配列とは ② • 一つの配列では、 同じ型のものしか扱えません 同じ性質の値だけをいれるようにします • ブラケットで囲み、各アイテム(要素)はカンマで区切ります(JSON) • データを取得する際は、添え字(何個目のデータ)を指定します
• Powe Automate は、文字列も一つ一つの文字の連続(=配列)として 解釈できます [ 1, 3, 2, 4, 0, 2 ]
配列とは ③ ぶき ぼうぐ ▪ おや・・・? クリスタル レイク JSON パンダ男
クリスタル レイク JSON パンダ子 クリスタル レイク JSON パン太郎 N.Y. JSON パンダ美 研究所 JSON パン助 宇宙船 JSON パンダ 宛先
配列とは ④ • 各要素は、オブジェクトや配列で指 定することも可能です [ {"宛先": {"住所":"クリスタルレイク","名前":"JSON パンダ男"}, "ぶき":
{"オノ":1,"チェーンソー":3}, "ぼうぐ": {"マスク":1} }, {"宛先": {"住所":"クリスタルレイク","名前":"JSON パンダ子"}, "ぶき": {"オノ":2,"チェーンソー":1}, "ぼうぐ": {"マスク":3} }, ---- 中略---- {"宛先": {"住所":"宇宙船","名前":"JSON パンダ"}, "ぶき": {"オノ":1,"チェーンソー":0}, "ぼうぐ": {"マスク":2} } ] [ [1,2,3], [4,5,6,7], [8,9] ]
関数(function) とは
関数とは ① ▪ 関数とは自動販売機のようなものである 引数(Input) 戻り値(Output) 関数(function)
関数とは ② ▪ 関数とは自動販売機のようなものである createArray() (1,3,2) [1,3,2] createArray()
Power Automate の配列関数 変換関数
配列を作る ⚫ array() 1 つの入力から配列を返します ⚫ createArray() 複数の入力から配列を作成して返します 1つの入力からも作成可能なので ➢
常にcreateArray()を推奨 ➢ アクションの[変数を初期化する]や[作成]でも作成可能
Power Automate の配列関数 コレクション関数
配列を捜索する ⚫ contains() コレクションに特定の項目があるかどうかを確認します ⚫ empty() コレクションが空かどうかを調べます ⚫ length() 文字列または配列内の項目の数を返します
➢ 文字列の場合、全角も半角も1として数える (サロゲートペア(UTF-16)は2)
配列から要素を取得する ⚫ first() コレクションから最初の項目を返します ⚫ last() コレクションから最後の項目を返します
配列から要素を取得する ⚫ skip() コレクションの先頭から項目を削除し、"他のすべて" の項 目を返します ⚫ take() コレクションの先頭から項目を返します ➢
パラメータがStringの場合は substring() で代用可
配列から要素を取得する ⚫ join() 配列の "すべて" の項目を含み、指定された区切り記号で 各項目が区切られた、文字列を返します ➢ [結合]と同じ
配列から要素を取得する ⚫ intersection() 指定したコレクションすべてに共通する項目 "のみ" を含む コレクションを返します ⚫ union() 指定した複数のコレクションの
"すべての" 項目を含む 1 つの コレクションを返します [ ],[ ],[ ] [ ] [ ],[ ],[ ] [ ]
配列から要素を取得する ⚫ item() 配列に対する繰り返しアクションの内部で使うと、アク ションの現在の繰り返しの間に配列の現在の項目を返しま す Apply to each で
[データ操作]-[選択]や [アレイのフィルター処理]
Power Automate の配列関数 文字列関数
配列から要素を取得する ⚫ split() 元の文字列で指定された区切り文字に基づいたより大きい 文字列から、コンマで区切られた部分文字列を含む配列を 返します ⚫ replace() 部分文字列を指定した文字列で置換し、更新された文字列 を返します
Power Automate の配列関数 算術関数
配列から要素を取得する ⚫ max() 数値のセットまたは配列から最大の値を返します ⚫ min() 数値のセットまたは配列から最小の値を返します ⚫ range() 指定した整数から始まる整数の配列を返します
123 123
Power Automate の配列関数 JSON関数
配列から要素を取得する ⚫ addProperty() JSON オブジェクトにプロパティとその値または名前と値 のペアを追加し、更新されたオブジェクトを返します ⚫ setProperty() JSON オブジェクトのプロパティの値を設定し、更新され
たオブジェクトを返します ⚫ removeProperty() JSON オブジェクトからプロパティを削除し、更新された オブジェクトを返します
Power Automate で配列操作 応用編
Power Automateで配列操作 [関数] item() range() substring() union() [データ操作] 可能性(出来ること)が無限大
文字列を1文字ずつに分割 substring(outputs('target_text'),item(),1) range(0,length(outputs('target_text')))
配列をソート ① substring(outputs('mapping_Text'),item(),1) ▪ ソートマッピングを作成 range(0, length(outputs('mapping_text')))
配列をソート ② Item() ▪ ソートマッピングを基にソート output(‘mapping_array’) output(‘target_array’)
配列をシャッフル ① rand(0,length(outputs('target_array'))) ▪ ターゲットの要素数×100個の、0~要素数のランダムな 数字を含む配列を作成 range(0,mul(length(outputs('target_array')),100))
配列をシャッフル ② ▪ Union()で出力される配列は、第一引数の要素順になります union(body('random_array_work'),range(0,length(outputs('target_array'))))
配列をシャッフル ③ ▪ 生成したランダムな配列を、添え字として指定 outputs('target_array')?[item()] outputs(‘random_array')
Power Automate と Power Virtual Agents で ゲームを作ってます ⚫ オセロ
⚫ 神経衰弱 ⚫ どうぶつしょうぎ ➢ 公開中 https://github.com/MiyakeMito/Repository ➢ インポート手順 https://qiita.com/MiyakeMito/items/b2df9ca9832fbce26a0d
まとめ 配列は便利 配列を制するとPower Automateが もっと楽しくなる 使いこなして面白フローをつくろう!
ありがとうございました