松本典子の「はじめよう!Azure Logic Apps/Power Automateでノーコード/ローコード」 第14回
応用の幅が広いテクニックを身につけよう
Excelシートで指定した時刻/内容で自動ツイートさせてみよう
2022年05月31日 08時00分更新
3. Azure Logic Appsワークフローの作成
今回Azure Logic Appsで作成するワークフローの全体図は上のようになります。この図に沿って作成していきましょう。
3-1. Azure Logic Appsのトリガーの作成
Logic Appsデザイナーで空のロジックアプリ(新規ワークフロー)作成画面が開くので、検索窓に「スケジュール」と入力します。表示される「スケジュール」コネクタをクリック。
スケジュールコネクタのアクション一覧が表示されるので、「繰り返し」アクションをクリック。
図の内容になるよう、「繰り返し」アクションを設定します。なお3と4の項目は、「Add new parameter」をクリックすると追加できます。
・間隔:今回は1時間おきに自動ツイートする設定とするので「1」と入力
・頻度:「時間」を選択
・タイムゾーン:一覧から「(UTC+09:00)大阪、札幌、東京」を選択。タイムゾーンを選択しないと、トリガーが実行されるタイミングが夏時間(DST)の影響を受ける可能性があります。
・開始時間:最初にトリガーを起動する日時を記載。今回は毎時00分に実行したいので「2022-05-14T00:00:00Z」のように入力
3-2. 「日付と日時」コネクタの設定
Excelシートに記載された時刻に自動ツイートするためには、「現在の時刻」アクションで(ワークフロー実行時の)現在時刻を取得する必要があります。ただし、デフォルトの状態で取得できる時刻は日本とは異なるタイムゾーン(UTC:世界標準時)のものであり、Excelに書かれた日本の時刻とはずれています。そこで「現在の時刻」を利用する場合はタイムゾーンの変換を行います。
「現在の時刻」アクションは「日付と時刻」コネクタに含まれます。検索窓に「日付」と入力し、表示される一覧から「日付と時刻」コネクタをクリックします。
表示されるアクションの一覧から「現在の時刻」アクションをクリック。
「現在の時刻」アクションには、特に設定項目はありません。時刻データのタイムゾーン変換処理は、後続のアクションで行います。
「+新しいステップ」をクリックし、検索窓に「日付」と入力して、もう一度「日付と時刻」コネクタを選択します。
今度は、表示されるアクション一覧から「タイムゾーンの変換」をクリックします。設定は図の内容のとおりにします。
1. 基準時間:動的なコンテンツの「現在の時刻」をクリックして設定
2. 変換元のタイムゾーン:一覧の中から「(UTC-09:00) 協定世界時-09」を選択
3. 変換先のタイムゾーン:一覧の中から「(UTC+09:00) 大阪、札幌、東京」を選択
4. 書式設定文字列:一覧の中から「カスタム値の入力」をクリックし「HH」と入力。これで「24時間表示」として値を取得できるようになりました。
3-3. 「Excel Online(OneDrive)」コネクタの設定
次はExcelシートからデータを読み取るアクションを追加します。まず検索窓に「Excel」と入力し、表示される一覧から「Excel Online(OneDrive)」コネクタをクリック。
アクション一覧の中から「表内に存在する行を一覧表示」アクションを選択します。
初めて「Excel Online(OneDrive)」コネクタを利用する場合は、Excel Onlineへのサインインが求められます。「1. 事前準備」で作成したExcelファイルを保存したOneDriveにアクセス可能なアカウントでサインインしてください。
追加されたアクションは、上図のように設定します。
1. ファイル:自動ツイート用のデータを書き込んだExcelファイルを選択
2. テーブル:テーブル作成時に付けたテーブル名。通常は「テーブル1」で問題ありません
3-4. 「データ操作」コネクタの設定
次のアクションでは、Excelから読み込んだデータの中から現在時刻に該当するものを抽出する処理を行います。まずは検索窓に「データ操作」と入力し、表示される「データ操作」コネクタを選択します。
アクション一覧の中から「アレイのフィルター処理」アクションをクリックします。
このアクションは上図のように設定します。
1. 差出人:動的なコンテンツの「表内に存在する行を一覧表示」一覧にある「Value」を選択
2. フィルター条件(左):動的なコンテンツの「表内に存在する行を一覧表示」一覧にある「ツイート時間」を選択
3. フィルター条件(中):一覧の中から「次の値に等しい」を選択
4. フィルター条件(右):動的なコンテンツの「タイム ゾーンの変換」一覧にある「変換後の時間」を選択
3-5. 「Twitter」コネクタの設定
最後のアクションはツイートの投稿です。これには「Twitter」コネクタを利用しますが、事前にTwitterのアカウント登録をしておく必要があります。登録方法などはTwitterの公式サイトで確認してください。
検索窓に「Twitter」と入力し、表示される「Twitter」コネクタをクリックします。
アクション一覧の中から「ツイートの投稿」アクションを選択します。
初めて「Twitter」コネクタを利用する場合は上図のように設定し、表示される指示に従ってTwitterアカウントに接続(サインイン)します。
1. 接続名:自分のTwitterアカウント名など、わかりやすい名前を入力
2. Authentication:「Use defalt shared application」を選択
「ツイートの投稿」アクションの設定は上図のようにします。「ツイートテキスト」の部分は、以下の内容を「式」として入力してください。
first(body('アレイのフィルター処理'))?['ツイート内容']
以上でワークフローは完成です! 最後に「保存」することを忘れないでください。
4. 実行結果
さっそくExcelシートにツイートの時刻と内容を書き込んで、自動ツイートされるかどうかを試してみましょう。筆者が自動ツイートさせた結果はこのようになりました。
また、Logic Appsの管理画面で「概要」を表示すると、実行結果が確認できます。2行目は「失敗」となっていますが、これはExcelシートでその時刻(この例の場合は11:00)には自動ツイートするよう指定していなかったためです。逆に、指定した10:00、12:00にはちゃんと「成功」していますね。
5. 最後に
今回は指定の時刻にツイートするワークフローを作りましたが、たとえばSlackへの投稿、メールの送信など、アイデア次第でツイート以外のアクションを繰り返し実行させることもできます。さらにカスタマイズすれば、「毎日○時」ではなく「毎時○分」や「毎月○日」にアクションを自動実行させるワークフローも作成できます。今回覚えたテクニックをベースに、次は皆さんなりにカスタマイズして、応用の幅を広げてみてはいかがでしょうか。
また冒頭でも書いたとおり、今回のワークフローはPower Automateでも作成できます。ご自身の持つライセンスで利用しやすいほうのサービスでぜひ試してみてください。
この連載の記事
-
第43回
Team Leaders
社内からの質問に自動回答! AI Builder+ノーコードでQ&Aボットを作ろう -
第42回
Team Leaders
Power Automateで複数人の承認(多段階承認)ワークフローを簡単作成しよう -
第41回
Team Leaders
重要なTeamsメッセージの見失い/見落としを防ぐPower Autometeのフローを作ろう -
第40回
Team Leaders
クラウドフローからデスクトップフローを「Picture-in-Picture」で起動する -
第39回
Team Leaders
面倒なカレンダー登録作業を生成AIで自動化するワークフローを作ろう -
第38回
Team Leaders
生成AIに日本語プロンプトで指示を出し、メールから情報を抽出してもらおう -
第37回
Team Leaders
フォルダー内のすべてのファイルを添付してメールを自動送信するフローを作ろう -
第36回
Team Leaders
ローカルPCのテキストファイルをPower Automateに読み込ませて活用しよう -
第35回
Team Leaders
受信メールの添付ファイルを種類に応じたフォルダに自動保存する -
第34回
Team Leaders
Power AutomateでTeamsのチーム全員にメンションを送る方法 -
第33回
Team Leaders
Power AutomateのCopilotは日本環境でも使えるか? 試してみました - この連載の一覧へ