
この記事では
Power Automate を使って次の事を可能にしていきます。
- 2週間先のスケジュールを毎朝決まった時間に Teams へ配信
- 先の「ある日」に連絡したいことを、あらかじめ入力すれば「ある日」のTeamsに連絡事項として出力する







こちらの記事をベースとして、応用した内容になっています。
Power Automate についての基本的な内容は
こちらを参考にしてくださいね。


使用しているフロー
フローの全体像


トリガーの設定


アクションの設定




それぞれのアクションは上の画像のように設定しています。
こちらの記事で細かく説明しています。


Power Automate の Post card in a chat or channel の JSON コード
{
"type": "AdaptiveCard",
"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
"version": "1.2",
"msTeams": { "width": "full" },
"body": [
{ "type": "TextBlock",
"text": "【★HR】",
"wrap": true,
"size": "ExtraLarge"},
{"type":"TextBlock",
"text": "今後の予定",
"wrap": true,
"size": "Large",
"color": "Attention"},
{ "type": "TextBlock",
"text": "★",
"wrap": true,
"size": "medium"},
{ "type": "TextBlock",
"text": "★",
"wrap": true,
"size": "medium"},
{ "type": "TextBlock",
"text": "★",
"wrap": true,
"size": "medium"},
{ "type": "TextBlock",
"text": "★",
"wrap": true,
"size": "medium"},
{ "type": "TextBlock",
"text": "★",
"wrap": true,
"size": "medium"},
{ "type": "TextBlock",
"text": "★",
"wrap": true,
"size": "medium"},
{ "type": "TextBlock",
"text": "★",
"wrap": true,
"size": "medium"},
{ "type": "TextBlock",
"text": "★",
"wrap": true,
"size": "medium"},
{ "type": "TextBlock",
"text": "★",
"wrap": true,
"size": "medium"},
{ "type": "TextBlock",
"text": "★",
"wrap": true,
"size": "medium"},
{ "type": "TextBlock",
"text": "★",
"wrap": true,
"size": "medium"},
{ "type": "TextBlock",
"text": "★",
"wrap": true,
"size": "medium"},
{ "type": "TextBlock",
"text": "★",
"wrap": true,
"size": "medium"},
{ "type": "TextBlock",
"text": "★",
"wrap": true,
"size": "medium"},
{ "type": "TextBlock",
"text": "本日の連絡",
"wrap": true,
"size": "Large",
"color": "Attention"},
{ "type": "TextBlock",
"text": "★",
"wrap": true,
"size": "medium"},
{ "type": "TextBlock",
"text": "★",
"wrap": true,
"size": "medium"}
]
}★部分には次の画像のように各データを参照しましょう。








今後の予定配信部分について



参照先のエクセルは以下の手順で作成しました。
※よく使うエクセル関数についてもまとめています。


①:職場で作成している年間予定表をエクセルデータにする
年間予定表の元データが大体エクセルだと思いますので、それが手に入れば一番楽です。


②:1年分を1列に整理
大体1か月1列でまとめられていると思いますので、それを1列にまとめます。
この時、日付や曜日、予定を1セルにまとめておきます。
※VSTACK関数を用いると複数の列を1列にまとめることができます。
※例では日にち、曜日、行事内容が別のセルになっていたので&と””を用いて一つのセルにまとました。
曜日に()をつけることもできます。


③:行と列を入れ替える
Power Automateで参照できるように行と列を入れ替えます。
エクセルのTRANSPOSE関数を使って縦1列に並んでいた年間予定を横1列にします。
④:テーブルを作成
PowerAutomateではテーブルからしか引用できないのでテーブルにしておきます。


2列目は4月1日からの2週間分の予定が横に並んでいます(Day1~Day14)
3列目は4月2日からの2週間分の予定が横に並んでいます(Day1~Day14)
4列目は4月3日からの2週間分の予定が横に並んでいます(Day1~Day14)
こんな感じで1日ずらしてテーブルにします。
1日ずらすには、例えばG3にはH2を参照させます。
これで常に「今日から2週間先」の予定が投稿されます。
本日の連絡欄について
本日の連絡もあらかじめ参照元のエクセルに入力しておけば、
その日に配信されるメッセージを予約しておけます(サンプルエクセルではC列のDetailにあたる部分)。
※ちなみに、投稿される際箇条書きにしたい場合はエクセル内で改行(Alt+Enter)を2回行い、
1行開けて入力しておく必要があります。



こちらのフローは本当に便利で、
ちょっと手を加えたものを毎年使っているのですが、
他のクラスの先生から「私も使いたいです!」ということで
こちらのフローを使っていただいています。
「あれ?うまくいかない!」「なんか画面が違う」そんな時は…。



同じようにやってみたのにフローが動かない…。
Power Automate のあるあるかもしれませんね。
なるべくシンプルなフローを作成したのですが、
ものすごくわかりにくい微妙な違いによって動かないことはあります。
(特にアダプティブカードのコードなど)



そんな時は相談フォームから相談してください。
実際のフローを見て解決しましょう。

コメント