2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Power Automate】よくあるエラー「Apply to each」でつまずくポイントと対処法まとめ

Posted at

:cactus: はじめに

Power Automateを使って「自動化」デビュー!…したはいいものの、
Apply to each(それぞれに適用)」が勝手に出てきてよく分からない…
そんな経験ありませんか?

この記事では、初心者がつまずきやすい「Apply to each」問題と、
すぐに使える対策&簡単な実例をセットで紹介します!

✅ そもそも「Apply to each」って何?

Power Automateでは、複数のデータを1つずつ処理するときに
「Apply to each(それぞれに適用)」が使われます。

たとえば:

  • Excelの表にある「顧客リスト」
  • SharePointの「タスク一覧」
  • Formsの「回答一覧」

などを 1件ずつ処理したい ときに使われます。

⚠️ 初心者がつまずきやすいポイントとその対策

① 勝手に「Apply to each」が挿入されてしまう

よくあるシチュエーション

Excelからデータを取得して、その中の「メールアドレス」列を使ってメールを送りたい…
動的な値を選んだ瞬間、勝手にループが挿入される!

image.png

image.png

🎯 原因

Power Automateは「これは配列だ!」と判断すると、自動的にループを挿入します。

✅ 対策:1件だけ取り出すには first() を使う

変数の値に入れる式
first(outputs('表内に存在する行を一覧表示')?['body/value'])?['メールアドレス']

先ほどの変数の値を格納する場所で動的なコンテンツではなく を選択して
上記の first() の関数を入力しOKを押します。

image.png

1件だけ取り出す関数を入力したので先ほどと違い
勝手にループが挿入されることがなくなりました!!

image.png

② 「Apply to each」の中でしか使えない値がある

よくあるシチュエーション

  • Excelで顧客データを取得(複数行)
  • Apply to each で1人ずつ処理  - 名前を取得  - 条件に合う人だけメール送信
  • 処理した名前をあとでまとめて通知したい

でも「名前」などの動的な値が Apply to each の外に出せない!!
式に選んでもエラーになるか、空になる:sweat_drops:

🎯 原因

Apply to eachは、1件ずつ処理する「ループ」スコープの中で動的な値を生成しています。
そのため、その中で得た「Current item(現在のアイテム)」などの値は、ループの中でしか使えません。

image.png

✅ 対策:変数に格納する

Apply to each の中で動的な値を変数に入れておけば
ループの外でも使えるようになります。

フローの最初にアレイ型の変数を初期化しておく。

image.png

Apply to each の中で変数に値を追加していく

image.png

追加した値を結合させて、出力した値をTeamsの本文に添付する

image.png

:bulb: おまけ:ループには必ず名前をつけましょう

ループが増えてくると、どの「Apply to each」が何の処理かわからない問題が出てきます。
そんな時は「…」メニューから名前変更をしておくのがオススメです!

image.png

image.png

これを行っておくだけでフローが読み返しやすくなります:blush:

:cactus: おわりに

最初は少しとっつきにくい「Apply to each」ですが、
ポイントさえ押さえておけばとても強力な味方になります!

「なんか勝手にループされる…」と思ったら、
まずはデータの中身が「配列」かを確認しましょう!

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?