VBAからPower Automate for desktopのフローを実行する

Power Autoamte外からのフロー呼び出しが可能に

先日のPower Automate for desktop(PAD)のバージョンアップにより、待望のPAD外からのフロー呼び出しが可能になりました。

Power Automate for desktop – June 2022 updat

つまり、ExcelのVBAから呼び出したり、自作プログラムから呼び出したり、デスクトップに置いたショートカットから呼び出したりすることができるようになりました。


有償ライセンスが必要

残念ながら誰でもこの機能を使えるわけではなく、有償ライセンスを契約している方だけです。

Power Automate 価格

私は「アテンド型 RPA のユーザーごとのプラン」を契約しているため利用可能です。

知らないうちに、一回の実行ごとに課金される従量制プランも用意されています。これでも使えるのか不明です。


呼び出しにはURLを使う

呼び出す方法はURLを使ったものでした。

Run desktop flows via URL

ブラウザから呼び出すこともできるし、シェルから呼び出すこともできます。

基本的な方法は次のページで詳しく解説されています。

[Power Automate for desktop]URL経由でデスクトップフローを実行する

実際の実行方法についてはこちらのページが良いでしょう。

外部リンク機能を使用した Power Automate for desktop のフローの様々な実行方法を試してみる


VBAからの呼び出し

というわけで、今回はVBAからシェルを使って呼び出してみました。


'フローIDを使ってPower Automateのフローを実行する

Public Sub uInvokePowerAutomate()

    Const uID As String = "ここにはフローIDを指定する"

    uRunPowerAutomate uID

End Sub


'指定されたフローをPower Automateで実行

'参照設定 Windows Script Host Object Model

Public Sub uRunPowerAutomate(ByVal uFlowID As String)

    Const uEnvID As String = "ここには環境IDを指定する"

    Dim uURL As String

    Dim uWS As WshShell

    uURL = "ms-powerautomate:/console/flow/run?environmentId=" & uEnvID

    uURL = uURL & "&workflowId=" & uFlowID

    Set uWS = New WshShell

    uWS.Run uURL

End Sub


WshShellオブジェクトを扱うには、参照設定で、Windows Script Host Object Modelを指定しておく必要があります。(CreateObjectでも可です)

あとはワークシート上に設置したボタン等で、上のプロシージャーを指定するだけです。

環境IDについては、Default- をIDの頭につけないと、実行できませんでした。


使ってみると

これで、今までいちいちPower Automateのコンソールから実行していたフローを、Excelからボタンクリックで簡単に呼び出すことができるようになりました。

それくらいと思われるかもしれませんが、実際に使ってみると結構便利だという事がわかってきました。

なぜかPADはデフォルトのフローの並び順が編集時間順で、名前順ではありません。また、デフォルトのソート順を変える方法も見当たりません。

そのため、PADを起動する、並び替える、フローを見つける、フロー実行、という手順が必要でした。

なにげに、並び替えとフローを見つけるというのが煩雑で、時には違うフローを実行してしまう時もありました。

Excelのボタンに貼り付けたり、デスクトップにショートカットを用意することにより、迷いなく実行できるようになりました。

また、Power Automateを知らない方でもスムーズに実行できます。


コメント

アクセスランキング(過去30日間)

セキュリティ対策ソフトのノートンが詐欺ソフトまがいになってしまってショック

Teamsで日本語入力すると左上に変換ウィンドウが出る

突然滅茶苦茶遅くなったPCがWindows Updateのキャッシュクリアで復活

Amazon Prime Videoで4K UHD映画を検索する方法

Microsoft Flight Simulator (2020)のPS4コントローラー設定

Excel 2019 クエリが原因で日本語入力の一文字目が勝手に確定する

Excel VBAからODBCを使ってデータを簡単に取得する

iPhone 12 Proと iPhone 8 Plusのサイズを比較

タレックス(TALEX)のサングラスには寿命がある

次期主力Wi-Fiルーター NEC Aterm WX5400HP