このページの本文へ

前へ 1 2 次へ

松本典子の「はじめよう!Azure Logic Apps/Power Automateでノーコード/ローコード」 第14回

応用の幅が広いテクニックを身につけよう

Excelシートで指定した時刻/内容で自動ツイートさせてみよう

2022年05月31日 08時00分更新

文● 松本典子 編集● 大塚/TECH.ASCII.jp

  • この記事をはてなブックマークに追加
  • 本文印刷

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 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への接続設定

 初めて「Twitter」コネクタを利用する場合は上図のように設定し、表示される指示に従ってTwitterアカウントに接続(サインイン)します。

 1. 接続名:自分のTwitterアカウント名など、わかりやすい名前を入力
 2. Authentication:「Use defalt shared application」を選択

「ツイートの投稿」アクションの設定

 「ツイートの投稿」アクションの設定は上図のようにします。「ツイートテキスト」の部分は、以下の内容を「式」として入力してください。

first(body('アレイのフィルター処理'))?['ツイート内容']

 以上でワークフローは完成です! 最後に「保存」することを忘れないでください。

4. 実行結果

 さっそくExcelシートにツイートの時刻と内容を書き込んで、自動ツイートされるかどうかを試してみましょう。筆者が自動ツイートさせた結果はこのようになりました。

今回のワークフローで自動ツイートした結果

Logic Appsの管理画面に表示された実行結果

 また、Logic Appsの管理画面で「概要」を表示すると、実行結果が確認できます。2行目は「失敗」となっていますが、これはExcelシートでその時刻(この例の場合は11:00)には自動ツイートするよう指定していなかったためです。逆に、指定した10:00、12:00にはちゃんと「成功」していますね。

5. 最後に

 今回は指定の時刻にツイートするワークフローを作りましたが、たとえばSlackへの投稿、メールの送信など、アイデア次第でツイート以外のアクションを繰り返し実行させることもできます。さらにカスタマイズすれば、「毎日○時」ではなく「毎時○分」や「毎月○日」にアクションを自動実行させるワークフローも作成できます。今回覚えたテクニックをベースに、次は皆さんなりにカスタマイズして、応用の幅を広げてみてはいかがでしょうか。

 また冒頭でも書いたとおり、今回のワークフローはPower Automateでも作成できます。ご自身の持つライセンスで利用しやすいほうのサービスでぜひ試してみてください。

前へ 1 2 次へ

カテゴリートップへ

この連載の記事