Power Automate Desktop|個別アクションのエラー発生時のフローを作成する

この記事では個別アクションのエラー処理を設定する方法について解説します。

Power Automate Desktop|エラー処理の方法」という記事の補足です。この記事だけでは、意味がわからないと思うので、こちら記事を先にお読みください。↓↓

「Power Automate Desktop|エラー処理の方法」から、飛んできた人は、そのままお読みください。

記事の内容
  • フローの概要
  • フローの作成準備
  • フローの作成手順
  • フローの実行
読者さんへの前書き

この記事で解説するフローは、「Power Automate Desktop|エラーが発生するフローを作成する」と「Power Automate Desktop|ブロックエラー発生時のフローを作成する」読んで、フローを作成していることを前提としています。

エラーが発生するフローを作成する記事
>>Power Automate Desktop|エラーが発生するフローを作成する

ブロックエラー処理のフローを作成する記事
>>Power Automate Desktop|ブロックエラー発生時のフローを作成する

それでは、どうぞ!

この記事を書いた人
この記事を書いた人
こさい
こさい

(株)完全自動化研究所代表のこさいです。

1) エンジニア歴25年超。RPA支援8年超
2) RPA関連の書籍を6冊出版。
3)ご質問・お仕事のご依頼はこちら

フローの概要

本記事で作成するフローを把握しましょう。

テキストファイルを読み込んで、演算を行い、最後にメッセージボックスを表示するというフローは前記事で作成しました。

このフロー内でエラーが発生した場合は、エラーキャッチして、エラーメッセージを表示します。

本記事ではファイルを読み込む際にエラーが発生した場合()、変数の設定を行い()、ファイルを作成する()というエラー処理を追加します。

エラー処理後はエラーが発生した次のアクションに移動します()。

本記事で作成するフローの概要

フローの作成準備

STEP1 フロー[ブロックエラー処理]をコピーする

Power Automate Desktop|ブロックエラー発生時のフローを作成する」で作成したフロー[ブロックエラー処理]をコピーして、フロー[個別エラー処理]を作成してください。

フロー[ブロックエラー処理]をコピーする

STEP2 フロー[個別エラー処理]をフローデザイナーで開く

STEP1で作成したフロー[個別エラー処理]をフローデザイナーで開いてください。

フロー[ブロックエラー処理]で作成したフローが表示されている状態になります。

フロー[個別エラー処理]をフローデザイナーで開く

STEP3 [エラーテスト.txt]を削除する

ドキュメントフォルダーを開いて、[エラーテスト.txt]を削除してください。

[エラーテスト.txt]を削除する

フローの作成手順

大きく2つの手順でフロー作成を進めていきます。

  • 1.エラー処理を行うサブフローの作成
  • 2.メインフローの作成

1.エラー処理を行うサブフローの作成

STEP1 サブフロー[OpenFile_Catch]を追加する

コンソールの[新しいサブフロー]をクリックしてください。

[サブフローの追加]ダイアログが表示されるので、[サブフロー名]に「OpenFile_Catch」と入力して、[保存]をクリックしてください。

サブフロー[OpenFile_Catch]の追加

サブフロー[OpenFile_Catch]が追加されます。

STEP2 [コメント]アクションを追加する

アクションペインの[フローコントロール]グループをクリックし、[コメント]アクションをサブフロー[OpenFile_Catch]のワークスペースに追加してください。

[コメント]アクションの追加

[コメント]ダイアログが開くので、コメントを入力し、[保存]をクリックしてください。

[コメント]アクションの設定

STEP3 [変数の設定]アクションを追加する

アクションペインの[変数]グループ内の[変数の設定]アクションを、[コメント]アクションの後に追加してください。

[変数の設定]アクションの追加

[変数の設定]ダイアログが開くので、[変数]を[FileContents]に変更し、[値]に「1」と入力して、[保存]をクリックしてください。

[変数の設定]アクションの設定

STEP4 [テキストをファイルに書き込む]アクションを追加する

アクションペインの[ファイル]グループ内の[テキストをファイルに書き込む]アクションを[変数の設定]アクションの後に追加してください。

[テキストをファイルに書き込む]アクションの追加

[テキストをファイルに書き込む]ダイアログが開くので、[ファイルパス]に「%SpecialFolderPath%\エラーテスト.txt」と入力し、[書き込むテキスト]に「%FileContents%」と入力してください。

変数は「{X}」を使うと入力間違いを防げます。

[エンコード]のドロップダウンリストから[システムの既定値]を選択して、[保存]をクリックしてください。

[テキストをファイルに書き込む]アクションの設定

これで、サブフロー[OpenFile_Catch]が完成しました。

サブフロー[OpenFile_Catch]の完成

2.メインフローの作成

次にメインフローを作成します。

STEP1 メインフローを開く

メインフローを開いてください。

メインフローを開く

STEP2 [ファイルからテキストを読み取る]アクションを変更する

[ファイルからテキストを読み取る]アクションをダブルクリックしてください。

[ファイルからテキストを読み取る]アクションをダブルクリック

[ファイルからテキストを読み取る]ダイアログが開くので、[エラー発生時]をクリックしてください。

[エラー発生時]をクリック

エラー発生時の設定画面に遷移するので、[新しいルール]をクリックし、表示されたメニューから[サブフローの実行]を選択してください。

[サブフローの実行]を選択

[サブフローの実行]のドロップダウンリストから[OpenFile_Catch]を選択して、[保存]をクリックしてください。

[OpenFile_Catch]を選択して[保存]をクリック

[スローエラー]がデフォルトで選択されていますが、そのままでOKです。

STEP3 [ブロックエラー発生時]アクションの設定を変更する

[ブロックエラー発生時]アクションをダブルクリックしてください。

[ブロックエラー発生時]アクションをダブルクリック

[ブロックエラー発生時]ダイアログが開くので、[スローエラー]を選択し、[保存]をクリックしてください。

[ブロックエラー発生時]アクションの設定を変更

フローの実行

ここから、フローを実行して、個別アクションエラー発生時の処理を確認していきます!

フロー実行の内容
  • ①フローを続けない場合(スローエラー)
  • ②フローを続ける場合(フロー実行を続行する)

①フローを続けない場合(スローエラー)

フローデザイナーの上部にあるツールバー内の[実行]をクリックしてください。

[ファイルからテキストを読み取る]アクションでエラーが発生し、[OpenFile_Catch]サブフローに遷移し、[エラーテスト.txt]が作成されます。

その後、[Catch]サブフローに遷移し、[エラー発生]メッセージボックスが表示されます。

[OK]をクリックしてください。

フローの実行結果

ドキュメントフォルダー内に[エラーテスト.txt]が作成されていることを確認してください。

[エラーテスト.txt]が作成されている

[ファイルからテキストを読み取る]アクションのエラー処理が動作したってことですね。

②フローを続ける場合(フロー実行を続行する)

次はフローの続行を試してみましょう。その前に以下のSTEPを実行してください。

STEP1 [エラーテスト.txt]を削除する

「フローの作成準備」のSTEP3を参考にして、ドキュメントフォルダーの[エラーテスト.txt]を削除してください。

STEP2 [ファイルからテキストを読み取る]アクションを変更する

[ファイルからテキストを読み取る]アクションをダブルクリックしてください。

[ファイルからテキストを読み取る]アクションをダブルクリック

[ファイルからテキストを読み取る]ダイアログが開くので、[エラー発生時]をクリックしてください。

[エラー発生時]をクリック

エラー発生の設定画面に遷移します。

[フロー実行を続行する]をクリックしてください。

[例外処理モード]のドロップダウンリストはデフォルトのまま[次のアクションに移動]とし、[保存]をクリックしてください。

[フロー実行を続行する]をクリックして[保存]をクリック

これでファイルの削除とフローの変更は終了です。

STEP3 フローを実行する

フローを実行してください。今度は「フローの実行に成功しました」というメッセージボックスが表示されます。[OK]をクリックしてください。フローが正常終了します。

フローの実行結果

個別アクションのエラー処理の後、フローを継続することができましたね。

まとめ

個別アクションのエラーは、

エラー発生時に汎用的ではないエラー処理を行いたい場合に設定します。

「フローの実行」の「②フローを続ける場合(フロー実行を続行する)」のケースのように、エラーが発生してもフローの中で対応し、処理を続行するという場合に有効なテクニックです。

「Power Automate Desktop|エラー処理の方法」に戻って、続きをお読みください。
>>Power Automate Desktop|エラー処理の方法に戻る

コメント ログインすると書き込めます