Power Automate for desktop

[Power Automate Desktop]メール受信をトリガーにしてフローを実行するVBAマクロ

前回、名前を指定してPower Automate Desktopのフローを実行するPowerShellスクリプトについて記事を書きました。

UI AutomationでPADの画面を操作する仕組みで、同様の処理はVBAからでも実行することができます(UIAutomationClient(UIAutomationCore.dll)要参照)。

※本マクロの使用は自己責任でよろしくお願いいたします。

実行ボタンを押した後、Sleepを使わずに処理待ちするのが上手くいかなかったので、PADを終了する場合は、フロー実行後にすぐにウィンドウを閉じる処理となっています。

VBAからでもPADのフローを呼び出せるとなると、Outlookが使える環境であれば、メール受信時に発生するイベント「(Application).NewMailEx」を使ってメール受信をトリガーにしてフローを実行することもできるわけです。

下記は一例ですが、受信したメールの件名が「PADフロー実行:(フロー名)」の場合にフロー名で指定したフローを実行します。

Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
  Dim itm As Object
  Dim v As Variant

  Set itm = Application.Session.GetItemFromID(EntryIDCollection)
  If TypeOf itm Is Outlook.MailItem Then
    v = Split(itm.Subject, ":")
    If v(LBound(v)) = "PADフロー実行" Then StartPADFlow v(UBound(v)), False
  End If
End Sub

下の動画では、スマホのOutlookからメールを送り、カメラで撮影した写真を添付メールで送信するフローを実行しています。

以上のように、Power AutomateのDesktop flowsコネクタを使わなくても、PADのフローを呼び出せることが確認できたわけですが、前回の記事でも書いた通り、安定してフローを実行できるわけではないため、実務ではDesktop flowsコネクタを使用した方が良いだろうと思います。

[Power Automate Desktop]名前を指定してフローを実行するPowerShellスクリプト前のページ

RPAのテスト用にレガシーアプリケーションを作ってみました。次のページ

関連記事

  1. Power Automate for desktop

    APIを使ったkintoneとPower Automate for desktopの連携

    前回の記事でkintone 開発者ライセンスの取得方法を紹介したので、…

  2. Power Automate

    [Power Automate]UIフローが2020年4月2日から利用開始になるようです。

    Power Automateのプランページを見たら、新たなプランが追加…

  3. Power Automate for desktop

    たった1行でPower Automate for desktop(PAD)から自由自在にExcelを…

    ※ 本記事は「RPA(ロボティック・プロセス・オートメーション) Ad…

  4. Power Automate for desktop

    Power Automate DesktopでPPAPしてみた。

    PPAP、所謂パスワード付きZipをメールに添付して、そのメールとは別…

  5. Office関連

    受信メールに対して自動的に返信するOutlookマクロ

    「Outlook VBA 自動返信」といったキーワード検索でのアクセス…

コメント

  • コメント (0)

  • トラックバックは利用できません。

  1. この記事へのコメントはありません。

Time limit is exhausted. Please reload CAPTCHA.

※本ページはプロモーションが含まれています。

Translate

最近の記事

アーカイブ

PAGE TOP