0
1

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でエクセルから複数行の情報を取得したい

Last updated at Posted at 2024-06-05

Power Automateのクラウドフローで複数行を取得したいケースのやり方です。

1. 複数行の取得

行の取得では複数行とれない

行の取得アクションは1行しか取ることができず、表内に存在する行を一覧表示を使う必要があります。

スクリーンショット 2024-06-06 0.54.45.png

ODATAクエリ

そのまま検索できそうですが、ODATAクエリを指定してねと言われます。

なんだろうって感じですが、シンプルな使い方だと列名 eq '検索したい文字'みたいな指定をすれば良さそうです。

こんなテーブルでコード1111の2行を取得したい場合、コード eq '1111'で良いみたいです。

スクリーンショット 2024-06-06 0.59.25.png

こんな感じです。

実行と確認

出力を見るとしっかり2行分のデータが取れてました。

スクリーンショット 2024-06-06 1.00.18.png

一旦ここまででOKと言えばOK。

2. 文字列を取得したい

こんな感じで配列で取得できている状態です。

[
    {
      "@odata.etag": "",
      "ItemInternalId": "xxxxxxxx-xxxxxxxxxxxxx",
      "コード": "1111",
      "ファイルパス": "https://hogehoge.com/aaaaa"
    },
    {
      "@odata.etag": "",
      "ItemInternalId": "xxxxxxxx-xxxxxxxxxxxxx",
      "コード": "1111",
      "ファイルパス": "https://hogehoge.com/bbbbb"
    }
]

この中からファイルパスにあるhttps://hogehoge.com/aaaaahttps://hogehoge.com/bbbbbを抜き出して利用したいです。

アクション: 変数を初期化する

配列から文字列を抜き出して格納する箱としてString型の変数を定義します。

変数の初期化をします。

  • Name: 出力する文字列 (任意の文字列でなんでも)
  • Type: String

アクション(ループ処理): それぞれに適用する

それぞれに適用するというアクションを追加します。環境によってはApply to eachという表示かもしれません。

Select An Output From previous Stepsの箇所にエクセルから取得したbody/valueを設定します。

これで配列のそれぞれの要素の個数分ループ処理が発生します。

アクション: 文字列変数に追加

ループ内で文字列変数に追加を設定します。

  • Name: 出力する文字列
  • Value: (エクセルから抜き出したデータを扱いやすいように設定)

(アクション: どこかに投稿など)

最後に出力する文字列の変数には色々とテキストが入っているのでTeamsなどに投稿しましょう。

画像ではTeamsに投稿させてみていますが、なんでもOKです。

こんな感じで投稿されました。

まとめ

意外と複数行になると処理が多くなりますが落ち着いてやればいけそうですね。

0
1
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
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?