Power Automate Desktopでタイマー機能を実装する方法

  • URLをコピーしました!

Power Automate Desktop (以下、PAD) を使用して、指定した時間後に自動的にフローを実行するタイマー機能を作成する方法を解説します。無料版のPADにはスケジュール実行機能がありませんが、工夫することでタイマーのような機能を実現できます。本記事では、初心者の方でも簡単に実装できるよう、アクションの詳細や設定方法を丁寧に説明します。


目次

タイマー機能の概要

今回作成するタイマー機能は以下の構成を持ちます:

  1. 待機時間の入力: ユーザーが待機時間を入力するためのポップアップ画面を表示します。
  2. 条件分岐: 入力内容を確認し、「OK」ボタンが押された場合は指定時間待機。「キャンセル」ボタンが押された場合はフローを終了します。
  3. 待機処理: 指定した時間待機した後、処理が完了したことを知らせるメッセージを表示します。
  4. エラーハンドリング: 入力内容が無効(例:全角数字など)の場合はエラーを検出し、再入力を促す画面を表示します。

フローの作成手順

以下の手順に従って、タイマー機能を構築しましょう。


1. ポップアップ画面の表示

まず、ユーザーが待機時間を入力するためのダイアログを作成します。

  1. アクション「入力ダイアログの表示」を追加します。
    • タイトル: 「タイマー設定」
    • メッセージ: 「待機時間を秒単位で入力してください」
    • デフォルト値: 空白でOKです。
  2. 出力の設定: 入力された値を保存するために、入力された値 という名前で変数を作成します。

2. 条件分岐の追加

ユーザーが入力を完了したか、キャンセルを押したかを判定します。

  1. アクション「条件」を追加します。
    • 条件: 入力された値 が空白の場合(キャンセルされた場合)
    • 処理: キャンセル時はフローを終了させます。具体的には「フローの終了」アクションを挿入します。

3. 待機処理

入力された時間をもとに待機させる処理を設定します。

  1. 「入力された値」を数値に変換します。
    • アクション「変数の設定」を追加し、以下の内容を設定します。
      • 変数名: 待機時間(秒)
      • : int(入力された値)
  2. 「待機」アクションを追加します。
    • 待機時間: 待機時間(秒) を指定します。

4. メッセージ表示

待機が終了したことを知らせるメッセージを表示します。

  1. アクション「メッセージボックスを表示」を追加します。
    • タイトル: 「タイマー完了」
    • メッセージ: 「指定された時間が経過しました」

5. エラー処理の追加

ユーザーが無効な値(例: 全角数字や文字列)を入力した場合に備え、エラー検出と再入力の処理を加えます。

  1. アクション「条件」を追加し、入力値が数値でない場合を判定します。
    • 条件: isnumeric(入力された値)False
    • 処理: 再度「入力ダイアログの表示」を実行させるために、ラベルを使って最初のステップに戻します。
  2. ラベルアクションの追加:
    • 再入力処理を円滑にするために、「ラベル」を挿入し、ポップアップ画面の最初に戻れるように設定します。

他のフローからタイマー機能を呼び出す方法

タイマー機能を他のフローで利用したい場合は、「サブフロー」を作成して再利用できるようにします。

  1. タイマー機能をサブフローとして保存します。
    • フローエディタ内で右クリックし、「サブフローを作成」を選択。
    • 名前を「タイマー機能」として保存します。
  2. 呼び出し元のフローでサブフローを呼び出す:
    • アクション「サブフローを呼び出す」を追加し、「タイマー機能」を選択します。
    • 呼び出し元のフロー内で、タイマーの結果に応じた処理を行います。

実演とテスト

  1. タイマー機能を実行し、ダイアログに「5」秒と入力して「OK」を押します。
  2. フローが5秒間待機し、その後「タイマー完了」というメッセージが表示されることを確認します。
  3. 入力値に全角数字(例: 「5」)を入力した場合、再入力を求める画面が表示されることを確認します。
  4. 「キャンセル」ボタンを押した場合、フローが即座に終了することを確認します。

よくある質問 (FAQ)

Q1. 全角数字をエラーとして検出するには?

全角数字はPADでは文字列として扱われます。そのため、isnumeric 関数で検出可能です。全角数字が入力された場合、「再入力を求める」条件分岐を用意しておくと便利です。

Q2. 入力時間を分や時間で指定したい場合は?

「入力ダイアログ」にて、時間単位(例: 「分」や「時間」)を選べる選択肢を追加できます。選択に応じて、入力値を秒に換算して「待機」アクションに渡すように設定します。

Q3. タイマー終了後に別の処理を自動的に開始できますか?

可能です。「待機後の処理」に別のフローやアクションを追加すれば、タイマー終了後に特定のタスクを実行することができます。

よかったらシェアしてね!
  • URLをコピーしました!

この記事を書いた人

目次