0
0

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】SharePointにある画像をランダムに取得してメールに表示するフロー

Posted at

Power AutomateでSharePointにある画像をランダムに取得してメールに表示するフローを作りました。

SharePointのフォルダにこんな画像が入っています。

image.png

この画像をランダムで取得してメールに表示します。

image.png

またはこんな感じ。
image.png

ではフローを作っていきます。

全体の流れ

このフローの全体の流れは以下のとおりです。

  • 画像が入っているフォルダのデータをリスト(配列)で取得
  • リストの中にある画像をランダムに1つ選択
  • 選択した画像をbase64に変換してメールで表示する

フロー

実際のフローはこんな感じです。
image.png

1.フローを手動でトリガーする

テストなので手動にしています。
定期実行するにはスケジュール済クラウドフローを使うとできます。
image.png

2.フォルダの一覧(SharePoint)

SharePointアクションからフォルダの一覧アクションを選択します。

サイトのアドレスで画像の入っているSharePointサイトを選択します。
ファイル識別子は画像の入っているフォルダを選択します。
image.png

3.変数を初期化する(fileList)

変数アクションから変数を初期化するアクションを選択します。
ここにSharePointのフォルダの一覧で取得した結果を入れます。

名前をfileList、TypeをArray(配列なので)、Valueにフォルダの一覧で取得した結果を入れます。
image.png

4.変数を初期化する(randomNumber)

再び変数アクションから変数を初期化するアクションを選択します。
今度はランダムな数字を入れる変数です。
image.png

Valueにはこのような式を入れます。

rand(0,length(variables('fileList')))

この式の解説はClaudeさんにお願いします。
image.png

5.作成(画像を選択)

データ操作アクションから作成アクションを選択します。
ここで実際に画像を特定しています。
image.png

式をこのように入力します。

variables('fileList')[variables('randomNumber')]

ふたたびClaudeさんの解説。
image.png
image.png

6.パスによるコンテンツファイルの取得

SharePointアクションからパスによるコンテンツファイルの取得アクションを選択します。

サイトのアドレスで画像の入っているSharePointサイトを選択します。
image.png

ファイルパスはこのように入力します。
ランダムに選択した画像のパスを取得します。

outputs('作成(画像を選択)')?['Path']

動的コンテンツで1つ前の作成アクションを選択してから?['Path']を足してあげるのが間違えなくて良きですね。
image.png

7.作成(画像をbase64で取得)

データ操作アクションから作成アクションを選択します。
表示する画像をbase64で取得します。
image.png

入力内容はこちらです。

base64(body('パスによるファイル_コンテンツの取得'))

base64()の中にSharePointのアクションで取得したデータを入れましょう。
image.png

8.メールの送信 (V2)

最後にメール送信を送信します。
Office 365 Outlookアクションからメール送信(V2)アクションを選択します。

宛先と件名を入力します。
image.png

本文を入力する前にコードビューを表示します。
image.png

このように入力します。

今日のくま🧸
<img src="data:image/png;base64,@{outputs('作成(画像をbase64で取得)')}">

outputs('作成(画像をbase64で取得)')の部分は動的アクションから選択するのが良きですね。

以上です。お疲れさまでしたー🎉
実行してみましょう。
image.png

お好きな画像が送信できたでしょうか?
では引き続き素敵なPower Automateライフをお過ごしくださいね🍀

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?