- 配列の値を削除したい
- 配列を分割したい
この記事では、そんな方に配列の値を削除・配列を分割する方法を4種類紹介します。
データ操作の要である「配列」を覚えてフローを使いこなしましょう。
(1)配列の最初・最後の値を削除
配列の値を削除するアクションはありません。
関数を組み合わせます。
最初の値を削除
skip(●元の配列●,1)
最後の値を削除
reverse(skip(reverse(●元の配列●),1))
データ操作の「作成」を追加します。
この配列を元に最初の削除と、最後の削除を試します。
["a","b","c"]
データ操作の「作成」を追加します。
最初の値を削除する式です。
skip(outputs('作成'),1)
フローを動かすと最初の値「a」が消えました。
データ操作の「作成」を追加します。
最後の値を削除する式です。
reverse(skip(reverse(outputs('作成')),1))
フローを動かすと最後の値「c」が消えました。
(2)配列の要素数を指定して削除
要素数を指定して削除するアクションはありません。
関数を組み合わせます。
split(concat(join(take(●元の配列●,●要素数●),'_,_'),'_,_',join(skip(●元の配列●,add(●要素数●,1)),'_,_')),'_,_')
データ操作の「作成」を追加します。
["a","b","c"]
データ操作の「作成」を追加します。
ここに削除したい要素数を指定します。
今回はbを削除してみるので1です。※要素数は0から始まります。
データ操作の「作成」を追加します。
この関数式で指定した要素数を削除します。
split(concat(join(take(outputs('作成'),outputs('作成_2')),'_,_'),'_,_',join(skip(outputs('作成'),add(outputs('作成_2'),1)),'_,_')),'_,_')
フローを動かすと、要素1の「b」が削除されました。
(3)配列の値を指定して削除
値を指定して削除はデータ操作の「アレイのフィルター処理」アクションを使います。
データ操作の「作成」を追加します。
["a","b","c"]
データ操作の「アレイのフィルター処理」を追加します。
差出人:outputs(‘作成’)
左側:item()
中央:次の値に等しくない
右側:b ※ここへ削除したい文字を入れる
フローを動かすと、指定した「b」だけ削除されました。
詳しくはこちらの記事を参考にしてください。
(4)配列を分割
配列の分割はtake関数とskip関数を使います。
配列の前半で分割
take(●配列●,●要素数●)
配列の後半で分割
skip(●配列●,●要素数●)
データ操作の「作成」を追加します。
この配列を前半・後半に分割します。
["a","b","c"]
データ操作の「作成」を追加します。
2つ目で分割して前半を取得する式です。
take(outputs('作成'),2)
フローを動かすと前半2つの「a」「b」のみに分割できました。
データ操作の「作成」を追加します。
2つ目で分割して後半を取得する式です。
skip(outputs('作成'),2)
フローを動かすと後半の「c」のみに分割できました。
まとめ
PowerAutomateで配列の値を削除・配列を分割する方法を4種類紹介しました。
配列の削除や分割を行うアクションはありません。関数式を使った配列操作方法を知っておくとフロー作成の幅が広がるので試してみてください。
PowerAutomateのおすすめ記事
人気ページ
Apply to eachの使い方
アレイのフィルター処理の使い方
日付関数の使い方
エラーを無視する方法
メールの内容をExcelへ転記
メール本文から名前を抽出
>>PowerAutomateの記事一覧を見る<<
お気に入り必須!公式ページ
Microsoft Power Automate
式関数のリファレンス
コネクタのリファレンス
Excel Online (Business)のリファレンス