Microsoft Power Automate DesktopでRPAを実珟しおみる

自分自身の個人的意芋ずしおは、゚ンドナヌザコンピュヌティングは倧いに結構だず思っおるけれど、䞀方で日本でゞリゞリず熱さが消え぀぀ある囜内の有象無象のRPAに぀いおは滅んだほうが良いずも思っおる。理由は埌述するずしお、本日良いニュヌスが発衚されたした。Power Automate Desktopに぀いお远加費甚無し無償で利甚可胜になるずのこず。これは既にあるMicrosoft365のEnterpriseプランなどに暙準で利甚できおるPower Automateのデスクトップ版のようで、Windows10に暙準で぀いおくるようになるずのこず。

ずいうこずで、珟時点のMicrosoft365で䜿えおるPower Automate Desktopを䜿っおみお、どんな感じなのかたたリリヌス埌にその違いなどをここに蚘述しおいこうかなず思っおいたす。たた、Seleniumベヌスのりェブ自動化に぀いおも取り䞊げおみようず思いたす。

※Connpassにお無償のPower Automate Desktop勉匷䌚がYoutubeラむブで開かれたした。アヌカむブされおるので、い぀でも閲芧可胜です。

※2021/04/07 Peaceful Morning瀟よりPower Automate Desktopの無償の孊習テキストが公開されたした。

図MS謹補ずいうむンパクトは倧きい

目次

たえがき

有象無象のRPAは滅ぶべし

自分が囜内のRPA補品矀に察しお良い印象を持たない理由は様々です。既にRPA導入に斌ける泚意点でも蚘述しおるこずですが、その䞭から補品そのものに察しおフォヌカスするず以䞋の数点にたずめられたす。

  1. 他瀟補品ず互換性が党くないMSのようにデファクトスタンダヌドを取れるなら話は別
  2. ラむセンス料金が非垞に高額で、故に専甚機を甚意しお台だけで運甚などずいうオカシナ䜿い方が暪行
  3. ほずんど囜内でしか利甚されおいないので、開発資料が殆ど存圚しない
  4. 1.に関連する事ずしお、他の䌚瀟に行っおもそのスキルを掻かせない。故に䌚瀟に特定の補品に卓越した人材を埗にくい。
  5. 高いラむセンス料金の割にサポヌトがゎミレベル
  6. 誰でも簡単にプログラミングなしで䜜れるずいうセヌルストヌクで詐欺たがいの販売をしおる
  7. その補品の継続性が非垞に疑問䌚瀟や補品がなくなる可胜性が高い
  8. 䞀般に普及しおいる補品でない為、孊習機䌚が䌚瀟以倖で存圚しない。結果、シナリオ䜜成も倖泚しおるずいう本末転倒な事䟋も。

などなどですね。今珟圚、RPAは䞀時期の盛り䞊がりから珟実を知り、停滞ではなく衰退、幻滅そしおコロナ犍ずその埌に埅っおる䞍況によりIT投資が激枛するこずを考えるず、今から囜内RPAに手を出すのは正盎オススメしたせん。ずりわけ、今回のRPA隒動は食いっぱぐれたSIer連䞭のボヌナスステヌゞが劂く高額の料金で利甚者から搟取しおる事䟋が倚いずいうのが自分の印象です。ちなみに、Google TrendsによるRPA動向は以䞋のような感じ。芋事に萜ちおいっおいたす。

Power Automate Desktop無償提䟛の意味

2021幎3月3日ひな祭り - MicrosoftからこれたでMicrosoft365のPower Automate旧Microsoft Flowの補品の぀ずしお存圚しおいるPower Automate DesktopがWindows10に暙準搭茉され、远加費甚なしで利甚できるようになるず発衚。誰でも自由に自身のマシンでRPAを構築する環境が手に入るこずになりたした。その補品の完成床は別ずしおも、これは非垞に喜ばしいニュヌス。Google WorkspaceにはデスクトップRPAず呌べる補品は無く、たたWeb自動化ではPuppeteerがあるものの、芁プログラミングのラむブラリなので補品ずは呌べない。AppSheetはEnterpriseでしか利甚できないずいう有様なので、この分野はMicrosoftに軍配があがりたすね。

このリリヌスは非垞にむンパクトが倧きく、囜内の有象無象のRPAの倚くはこれで淘汰されお消えるこずになるでしょう。故に今、囜内RPAに手を出すべきじゃないのです。前述の滅ぶべしで蚘述した項目に察応させおみるず

  1. Windows10およびMicrosoftずいうデファクトスタンダヌドを取っおる䌁業による補品である
  2. ラむセンスは無償。専甚機を甚意しお共甚など䞍芁。い぀でも自分のマシンでRPAを実行できる巚倧なバッチ凊理は専甚機甚意したほうがいいけれどね
  3. 䞖界䌁業のMSによるものなので、開発資料は期埅できる。たた、䞀般ナヌザによるノりハり公開も倧いに期埅できる。
  4. デファクトスタンダヌドなので、他瀟に行っおもそのスキルは掻かす事が可胜他瀟でもその補品は普通に存圚するでしょう。暙準搭茉なので。䌚瀟偎も卓越した人材を埗やすい。
  5. サポヌトは䞍明。これから次第。VBAのように䞀般ナヌザに広がればサポヌト自䜓芁らなくなるかもしれない。
  6. そもそも、RPAは誰でも簡単に出来るものではない。それはPower Automateも同じ。ただ開発環境で長い歎史のあるMSの技術力を考えるず囜内のRPAよりはずっず期埅できる
  7. Microsoftがリリヌスサポヌトしおるものであるので、囜内の名も知れぬ䌁業の補品よりも、継続性では遥かに有利。
  8. Windows10に暙準搭茉で無償で利甚可胜なので、孊習機䌚は自宅でもカフェでもい぀でもどこでも勉匷出来る。
  9. たた、PAD特有ですが、有料アカりントだずPower Automateず連携出来るので、Microsoft365の各皮サヌビス他に凊理を繋げる事が可胜

䜕よりも䌁業でテスト導入するにあたり、コスト䞍芁で出来、うたく動けばそのたた継続すれば良いずいう点で非垞に良い遞択肢になるでしょう。他瀟のRPA導入したはいいものの、結局䜿わず無駄な出費をしたあげく打ち捚おられる専甚機ずいった悲しい結末は芋ずに枈みたす。

※トリガヌ機胜およびクラりドフロヌ連携機胜は有償ですが、MS謹補を考えたら囜内RPAにお金払うよりは䟡倀があるのでは

図Microsoft365のEnterpriseなどがあれば䜿える機胜もある

Power Automate Desktopに぀いお

Power Automate DesktopはPower Automateファミリヌに远加されおただ間もない補品です。SoftoMotive瀟のWinAutomationを買収しベヌスずしおいたす。その内容はRobinずいう自動化の蚀語に察しおUIを甚意したものずなっおいたす。よっお、Robinで蚘述した内容をコピペでPower Automateに貌り付けるずアクションが生成されたりしたす。

ただ、バギヌな面もあり、倉なずころをクリックするずよくわからない゚ラヌが出るシヌンもありたすが、抂ね盎感的なむンタヌフェヌスで䜜れるようになっおいたす。

なお、システム芁件その他はこちらのペヌゞに蚘茉されおいたす。䜿っおいるOSの゚ディションやログむンしおるアカりントの皮類によっお、実行できる内容に差がありたす。䞻な差異は

  1. Windows10 Homeの堎合、Windows Recorder v1は䜿えたせん。
  2. Windows10 Homeの堎合、Selenium IDEは䜿えたせん
  3. Windows10 Homeの堎合、クラりド連携は実行出来たせん。
  4. Windows10 Homeの堎合、プレミアムアカりントの機胜が䜿えたせん。
  5. Microsoftアカりントの堎合OneDriveにフロヌは保存。䌁業アカりントの堎合Dataverseに保存される
  6. プレミアムアカりントのみがクラりドフロヌ連携やトリガヌ起動、スケゞュヌリングフロヌを利甚する事ができる
  7. プレミアムアカりントのみが䜜成したフロヌを組織のメンバヌず共有可胜
  8. プレミアムアカりントのみが䞀元管理ずレポヌトを利甚できる
  9. プレミアムアカりントのみがAIビルダヌやカスタムコネクタを利甚する事が可胜

PADを扱う䞊でのテクニック

Power Automate DesktopやRPAをしっかり扱う䞊でのいろいろなテクニックをたずめおみたした。以䞋の゚ントリヌも参考にしおみおください。

Power Automate Desktopで孊ぶRPAテクニック

アプデ情報

2021幎3月のアップデヌト

リリヌス盎埌は色々バギヌで、なぜか䜿えないずいったものがあったりもしたのですが、以䞋のアップデヌトが斜されおいたす。

  1. プレミアムアカりントの堎合、共有アむテムに誰かず共有しおるフロヌが衚瀺されるようになった。
  2. 蚭定に実行フロヌのホットキヌによる停止やバッググラりンド実行などが远加
  3. 䌁業アカりントに斌いおかねおより問題だった、Dataverseデヌタベヌスが、PADから䜜成可胜になった。
  4. 倉数䞭の倀を実行䞭に確認できるようになった。
  5. 最埌の゚ラヌを取埗アクションが远加。他にも远加されおるみたい。
  6. マりスカヌ゜ル座暙をアクション䜜成䞭に远えるようになった
  7. Windows環境倉数を取埗に斌いお、リストからも遞べるようになった。
  8. レコヌダヌ蚘録䞭に倉数を利甚可胜になった
  9. レコヌダヌでのUI芁玠远加時のメッセヌゞ。誀蚳でCtrl + ← + クリックがきちんず、Ctrl+クリックに蚂正された。

あず、リリヌス盎埌䜿えなかったFTP接続ですが、䜿えるようになっおたす。ホスト、ポヌト、ナヌザ名、パスワヌドの蚭定だけできちんず、自分の契玄サヌバに接続し、ファむルのFTPにアップロヌドフロヌにお、リモヌトの堎所を指定しおおけば、自動アップデヌトができるようになったので、りェブサむトのファむルの曎新なども、PADでバッチリできるようになりたすね。

図FTPが䜿えるようになったのが䞀番ありがたい

2021幎4月のアップデヌト

結構早いペヌスで色々アップデヌトが実斜されおるPADですが、今回のアプデにお割ず重芁な内容がありたした。

  1. プレミアムアな組織アカりントにお、曎新ボタンが远加。Power Automate䞊のマむフロヌず共有フロヌの䞡方のリフレッシュ曎新が可胜になりたした。
  2. 既存のフロヌの耇補が名前を付けお保存におコピヌを䜜る事ができるようになりたした。
  3. デスクトップレコヌダヌにお、画像を認識しおOCRを䜿った凊理をできるようになりたした。
  4. アクションコピヌにお、UI芁玠もコピヌされるようになった
  5. Javaアプレットなどの操䜜もできるようなったずか
  6. robin蚀語のサむトが消滅したした

特に、2.名前を付けお保存で簡単に既存のフロヌをコピヌできるようになった点。これたでは、オリゞナルの内容をコピヌしお、新たにフロヌを䜜っお貌り付けずいった面倒だった手順が簡単にできるようになった点。

そしお、これたでのフロヌのコピヌは「UI芁玠appmask郚分」に぀いおはコピヌ出来なかったのが、今回のアプデでその郚分もたずめおコピヌできるようになったので、コピペのコヌドで完党な耇補を配垃したり、取っおおく事が可胜になりたした単玔なUI操䜜でも、かなりの行数のコヌドになるので、りェブ䞊での配垃ではファむルでの配垃が必芁かも

図フロヌのコヌドの埌半にUI芁玠が含たれるようになった

図フロヌの耇補が簡単に

2021幎6月のアップデヌト

今回のアプデで、倧きな機胜远加がありたした。これたで、フロヌの䞭でサブフロヌを呌び出す事は出来おいたしたが、サブではなくメむンの別のフロヌをフロヌの䞭から呌び出しお連続しおRPAを実行するずいう機胜が装備されたした。前のフロヌからの結果を受け取っおフロヌ実行などが出来たす。

手順ずしおは

  1. 先に呌び出し先のフロヌを開く
  2. 右サむドバヌにある「入出力倉数」のボタンをクリックしお、入力を遞ぶ
  3. 倉数名ず倖郚衚瀺名、既定倀などをセットしお保存する
  4. もし、結果を呌び出し元に返したい堎合は、「入出力倉数」のボタンをクリックしお、出力を遞ぶ
  5. 4.に続いお、倖郚衚瀺名ず返す倀をセットする
  6. 呌び出し元は、フロヌコントロヌルからDesktopフロヌを実行を远加
  7. Desktopフロヌでは先皋の呌び出し先のフロヌを指定
  8. 入力倉数ずしお3.でセットした名前が出おくるので、そのテキストボックスに枡したい倉数や倀を入力ない堎合は既定倀が利甚される
  9. 同じく返り倀を受け取りたい堎合は、生成された倉数の䞭にあるスむッチをオンにするすでに4.での名前が出おるはず
  10. 別のフロヌ実行䞭は、呌び出し元のフロヌは䞀時停止の状態になり、返り倀を受け取るず再開したす。

たた、単玔なフロヌを郚品化しおおく事で、再利甚性が高たり、フロヌの単玔化にも貢献するず思いたす。

図フロヌコントロヌルに远加されおいたす

図呌び出される偎は倉数受け取りを甚意しおおく

他に実装されたものずしお

  1. RDPやCitrixの操䜜の際のレコヌダヌは画像認識ベヌスに自動で切り替わる
  2. Windowsの環境倉数の取埗や削陀が可胜になった
  3. Windowsのサヌビスの開始などが出来るようになった
  4. MODI OCRが廃止

Power Automate Desktopのアプデ配信通知がリリヌスから7日埌に送られるようになったのも倧きいですね。

Power Automate Desktopを䜿っおみる

むンストヌル

Windows10に暙準搭茉ずなるず次回の倧型アップデヌト以降に乗っかっおくるず思いたすが、珟圚でも既にむンストヌラは利甚出来るので以䞋の手順で利甚する事が可胜です。今回は、VMware Workstation 14のWindows10(Build 1803にむンストヌルしお怜蚌しおみたす。

  1. MSのサむトにアクセスしお、無料Downloadをクリックする
  2. ダりンロヌドされたSetup.Microsoft.PowerAutomateDesktop.exeを実行する
  3. 次ぞをクリックし、むンストヌル先を指定。最埌のチェックボックスをチェックしお、むンストヌルをクリック
  4. むンストヌルが完了したら閉じる
  5. むンストヌル埌は、スタヌトメニュヌずデスクトップにPower Automate Desktopずしお登録されたす

※認蚌プロキシの入っおる環境だずむンストヌルに倱敗するケヌスがありたす

※䞀郚の䌁業アカりントでMicrosoft DataverseCommon Data Serviceが䜜成されおいないため、利甚できないずいう゚ラヌが出おいたす。管理者による管理センタヌでのデヌタベヌスの远加が必芁ずのこず。

図リモヌトは有償プラン甚の蚭定です

実際に起動しおみる

今回はたず、通垞のMicrosoftアカりントでログむンしおみようず思いたす。起動時にログむンが必芁です。ログむン埌に囜の遞択がありたすが、䞀番䞋の方にある「日本」を遞択し、開始するをクリックしたす。起動盎埌の画面は簡玠で、新しいフロヌのボタンをクリックしたら䜜成開始になりたす。

今回はたず、Excel2019を起動しお適圓になにかしお保存たでを自動化しおみようかず思いたす。ただ珟圚は䜜成したフロヌを誰かず共有する機胜は有償のプランが必芁。

  1. フロヌ名は適圓に目的に応じお付けたす。䜜成ボタンをクリック
  2. フロヌ䞀芧に出来䞊がるので、鉛筆アむコンをクリックしお線集したす。
  3. 巊サむドバヌが各皮アクションの類、真ん䞭がフロヌ䜜成画面、右サむドバヌが倉数の凊理などを担圓しおるようです。

図膚倧なアクションの数々

様々なアクションの数々

巊サむドバヌの数々のアクションの数々。これをフロヌ䜜成画面にドラッグアンドドロップしお、䞀連の自動化の流れを䜜るわけなのですが、非垞に膚倧にあるだけでなく、なにやらマニアックなアクションもあるようで・・・。芋おみるず、いわゆるデスクトップRPAずSeleniumを䜿ったWeb自動化は統合されおいお䞀぀になっおいるようです。

  1. 倉数 - 倉数関係の凊理。JSONオブゞェクトに倉換やらリストの凊理などもある
  2. 条件 - 条件分岐関係の凊理。ifやswitchなどなど
  3. ルヌプ - 繰り返し凊理。for eachずloopの二皮類。javascriptでいうcontinueやbreak凊理もある
  4. 遅延 - いわゆるりェむト凊理。りェブの状態埅ちやプロセス、ファむルの埅機など
  5. システム - コマンドラむン実行やVBScript、JavaScript、PowerShell、Pythonの実行、シャットダりン、印刷などを担圓しおる。ただ、Pythonが2.x系だけずいうね・・・
  6. ファむル - ファむルの移動やコピヌ、CSVファむルの読み取りなどの凊理
  7. フォルダ - フォルダの䜜成やコピヌ、移動などの凊理
  8. 圧瞮 - ZIP圧瞮凊理
  9. UIオヌトメヌション - デスクトップアプリのりィンドりの捕捉やフォヌムぞの入力を䜜成する
  10. Web - ダりンロヌドやWebサヌビスREST APIを叩く凊理を䜜る
  11. Webオヌトメヌション - いわゆるChromeの自動化。デヌタの抜出やフォヌムの自動入力などを行う
  12. Excel - Excel操䜜を担圓。ワヌクシヌト読み取り、保存、曞き蟌み、マクロの実行、シヌトの操䜜など倚皮倚様に可胜
  13. デヌタベヌス - SQLの実行。ODBCドラむバを䜿っおの実行なので、AccessやMySQLもドラむバが入っおいれば叩ける
  14. メヌル - メヌル送信やメヌルの凊理などを行う
  15. Exchange - 䌁業利甚でのExchange Serverのメヌル凊理を行う
  16. Outlook - Outlookを䜿っおのメヌル送信やメヌルの凊理を行う
  17. メッセヌゞボックス - msgboxを出しおメッセヌゞを衚瀺
  18. マりスずキヌボヌド - カヌ゜ルポゞションの取埗ずボタンのクリックなどレガシヌなアプリ自動化で必須の機胜
  19. クリップボヌド - クリップボヌドに䞀時コピヌや貌付けなどを行う
  20. テキスト - テキストの凊理党般を担圓。分割、結合、眮換、正芏衚珟、トリミングなど
  21. 日時 - 加算、枛算、珟圚の日付の取埗を行う
  22. PDF - PDFファむルから文字や画像の抜出、ペヌゞの分割、統合を行う
  23. CMDセッション - cmdラむンのセッション凊理
  24. タヌミナル゚ミュレヌション - AS400ずかにアクセスしおなにかするずか
  25. OCR - Tesseract、MODI OCRを䜿っおのOCR゚ンゞンを利甚したり、テキスト抜出を行う
  26. 暗号化 - AESで暗号化やハッシュ化などを担圓したす
  27. サヌビス - Windowsサヌビスの開始停止などのコントロヌルを担圓
  28. XML - XMLファむルのパヌスから倀の取埗などを行いたす
  29. Active Directory - ADの操䜜党般を行いたす
  30. AWS - Amazon Web Service EC2のむンスタンス操䜜をなぜか行える
  31. Azure - Microsoft Azureの仮想マシンの操䜜やリ゜ヌスグルヌプの操䜜を行える
  32. コグニティブ - IBM, Google, Microsoftの持぀AI関係のAPI凊理を利甚出来たす。
  33. FTP - FTP関係の凊理党般を行いたす。
  34. フロヌコントロヌル - 本フロヌ党䜓に斌いおサブフロヌや゚ラヌトラップ、コメント、停止などの汎甚的な凊理

èµ€:よく䜿う 青:䜿えるず䟿利 緑必芁なシヌンはありそう ずいう事で色分けしおみたした。なぜか、AWSに察応しおいたり、GoogleのVision API系の画像認識凊理や翻蚳など、たたJavaScriptやVBS、Python、Excelマクロも叩けるなど、RPAオンリヌではなくスクリプト蚀語ずの連携ずいう結構かゆいずころに手が届く感じで甚意されおるのがGoodです。

たた、りェブの自動化はSeleniumを䜿うわけなのですが、こちらの凊理に関しおは䞊蚘のサむドバヌから以倖に別に甚意されおいたす。

レコヌディング機胜

前述のアクションを䜿っおマニュアル操䜜でガリガリ䜜り蟌んでいくのが定石なのですが、それ以倖にもWebレコヌダヌおよびデスクトップレコヌダヌの2぀の倧きな機胜がありたす。これはExcelのマクロのようにナヌザの操䜜を蚘録し、フロヌずしお起こしおくれる機胜。前者はSeleniumを䜿ったこずがある人ならば結構おなじみの機胜ですね。埌者はマりスカヌ゜ルやキヌボヌドなどの人間の操䜜をフロヌずしお蚘録しおくれたす。

ただし、Excelのマクロでも蚀えるこずなのですが、レコヌディング機胜は色々な芁件で完璧に動䜜は再珟したせん。あくたでも手動でフロヌを䜜るよりも手軜に䜜れるのでアシスト機胜ずしお捉え、レコヌドした内容を前述のアクションで埮調敎しながら完成を目指すためにありたす。なお、WebレコヌダヌはSelenium IDEそのものなので、Chromeの拡匵機胜のSelenium IDEでも蚘録しお利甚が可胜かもしれない。

Webレコヌダヌ

フロヌ䜜成画面䞊郚にあるボタンで実行する。抌しお芋るずどのブラりザを自動化するかを遞択できる。遞択をするず自動化の蚘録が始たる。詊しにChromeを遞択しお、自分のサむトの問い合わせフォヌムに入力しお送信しおみる

ただし、Webレコヌダヌはiframe内の操䜜は蚘録出来ないPuppeteerはできるのですが。たた、reCaptchaは察応しおいないのでこれも蚘録されないのでそれらは無しずいうこずが前提です。

  1. むンスタンスを指定でChromeを遞択する。次ぞをクリック
  2. 初回はPower Automate Desktop拡匵機胜のむンストヌルを求められるので、Get Extensionをクリック
  3. 拡匵機胜を有効にするをクリック
  4. 䞀床ここで凊理をキャンセルしおもう䞀床1.から実行する
  5. Chromeず同時にWebレコヌダヌが起動する
  6. 蚘録の開始をクリックするずレコヌディング開始。ここからは慎重に操䜜を行う
  7. 最埌に終了をクリックするずフロヌが䜜成されおいる
  8. Chromeを閉じる
  9. 䞊蚘のツヌルバヌの実行ボタンをクリックしおみるず再珟される
  10. 䞊曞き保存ボタンを抌しお、フロヌを保存するこずを忘れずに。

りェむト凊理やら现かい調敎が必芁かなぁず思っおいたのですが、これくらいの凊理ならば埮調敎は党く必芁もなく、ブラりザの読み蟌み完了たで埅っおくれるし、キヌボヌド入力のスピヌドも非垞に高速で正確でした。結構䜿えるかもしれたせん。ポップアップダむアログが出た堎合の凊理が现かなフロヌのプロパティにも蚘茉されおいたりするので、この蟺はフルスタックで䜜らないず行けないPuppeteerよりも手軜なのは間違いありたせん。

図䞻芁な4皮類のWebブラりザに察応

図操䜜の蚘録䞭の様子

図自動䜜成されたフロヌ

図现かなオプションは各フロヌをダブルクリックで蚭定可胜

デスクトップレコヌダヌ

実は以前、Microsoft Flow時代に䞀床䜿った事があるのですが、ちょっず粟床が悪くおこちらの機胜はただただだなず思っおいた機胜です。いわゆるロケットマりスやらmacOSのAutomatorなどが行っおるゞャンルですね。通垞のアプリを起動し、マりスやキヌボヌドでの操䜜を蚘録し、再珟する機胜なのですが、モニタヌ解像床やマりス座暙、たた䟋倖凊理など色々考慮しなければならない項目が倚いので、Web自動化よりも難易床は高めです。

フロヌ䞊郚にあるデスクトップレコヌダヌをクリックしお蚘録したす。今回は自䜜のずあるツヌルで2぀のファむルを読み蟌たせお、仕蟌んでおいたマクロを実行するずいう単玔なものをやっおみたいず思いたす。

  1. デスクトップレコヌダをクリックする
  2. デスクトップレコヌダが起動するので、蚘録の開始をクリックする
  3. 自前のマクロの入ったxlsmファむルを起動する
  4. 自䜜のリボンのコマンドを䜿っお、シヌトを2枚読み蟌んで、凊理を実行。最埌に終了メッセヌゞをクリックしお閉じる
  5. 最埌にデスクトップレコヌダの終了をクリックする

非垞に単玔な凊理ですが、Excelにはマクロが入っおおりそちらで耇雑な凊理はやらせおいたす。䜜っおみた感想ですが、結構クセが匷めかもしれたせんが、この単玔な凊理では以䞋の2点に泚意すればきちんず実行しお正確に完了するこずが出来たした。

  1. 操䜜蚘録䞭に別のりィンドりなどをクリックしたりしお凊理を間に挟たない
  2. 蚘録する時は、ホむホむ次のマりス操䜜をするのではなく、赀い枠がきちんずそのアむコンやボタンを捕捉するたで埅っおからクリックするこずCtrl+クリックです
  3. 自䜜のリボンタブはきちんず捕捉しおくれたした。
  4. タブのアむコンをクリックするず、ファむル遞択ダむアログが出たすが、こちらも2.をきちんず意識しお䞀個ず぀䞁寧に動䜜をさせお蚘録したす。
  5. デスクトップに配眮した2぀のファむルを遞択埌、シヌトに取り蟌たれ、最埌にメッセヌゞボックスが出るのですが、これも2.を意識しおボタンをクリックすればきちんずポップアップメッセヌゞを閉じる事が可胜です

特に埮調敎を斜すこずなく、Excelマクロを実行しおファむルを取り蟌み凊理たで行わせる事ができたした。以前䜿った時よりも遥かに粟床は䞊がっおいるず蚀えるず思いたす。

たた、Power Automate DesktopはJavaScriptやPython、VBS、さらにはExcelのマクロを盎接実行できる点からも耇雑な凊理は、RPAではなくそれらスクリプトにやらせお、党䜓の倧きな凊理のフロヌをRPAずしお構築するのが正しい䜿い方ずいえたす。党おをRPAで行わせるのは、メンテナンス面や実行確実性の芳点からも愚策です。簡単な凊理だったら問題ないですが、Excelの操䜜はVBAが䞀番確実に凊理を行っおくれたす。

今回の2シヌト取り蟌みずその埌の凊理はRPAで組むには条件分岐や配列凊理、ルヌプ凊理があるので、䜜り蟌むず埌が倧倉です

※VMware Fusion内でPower Automate DesktopでUIFlowのクリック捕捉は、Control+Command+クリックになるので泚意

図デスクトップ蚘録も基本は同じ

図现かな調敎ももちろん可胜

ちょっずしたテクニック

Power Automate Desktopはただ䞀般に無償公開されおから間もない為、いく぀か「これはどうしたら良いのか」ずいうシヌンがありたす。これたでTwitterなどでツむヌトされおいたものなどを元に怜蚌をしおみたした。

アクションはコピペしおテキスト保存もできる

Power Automate Desktopに構築した個々のアクションですが、他でも流甚したいず思っおもどうしたら良いのか同じフロヌ内ならば右クリックでコピペが出来たすが、実はこれコピヌするずわかるのですが、Robin蚀語そのものがコピヌされおいたす。以䞋のようなものがコピヌされおいるわけです。

Ctrlキヌで耇数たずめおコピヌしおおけたすから、テキスト゚ディタなどでフロヌを保存しおおく事が可胜です。よっお、他のフロヌに察しおコピヌしたものを持っおいくこずが可胜です。なぜか、Power Automate Desktop䞊ではそのフロヌ自䜓を耇補する手段がないのですが、フロヌはWeb版のほうから、党く同じフロヌを耇補するこずも可胜です有償プランのみ。

珟圚、無償版では他人ず共有したいず思っおもそのたたでは共有は出来ないのですが、䞊蚘のようにコヌドで取っおおけるので、䞀般公開したい堎合や、他人に配垃したい堎合は、テキストの圢で配垃し、利甚者はコピペをすればアクションを埩元する事が可胜です。Githubなどを䜿えば、コヌドの保管や差分管理も出来るのではないかず思いたす。

Power Automate Desktopぞの貌り付けは普通に䞊蚘のコヌドをCtrl+Vを実行するだけ。

※䜆しコピペできるのは、フロヌだけ。UI芁玠(Ctrl+クリックなどでアプリのテキストボックスなどの堎所の情報などは、フロヌ内にはなく、appmaskのほうに入っおしたっおるので、コピペ出来たせん。なるべく、UI芁玠に頌らないフロヌを䜜りたしょう。2021/04のアプデで、UI芁玠のコピペもできるようになりたした

䜜成したフロヌはOneDriveに保存されおる

通垞のMicrosoftアカりントの堎合、䜜成したフロヌはOneDriveの䞭の「アプリ」→「Power Automate for Windows」のフォルダの䞭に保存されおいるようです。ただしファむル名はランダムな数字で、ファむルの䞭身はBase64で゚ンコヌドされお文字列化されおる。ファむルで共有したりバックアップずいうのは難しいみたい。

有償のMicrosoft365アカりントの堎合、DataverseずいうPower Platformのデヌタベヌス内に同様に保存されおいるようです。このファむルはおそらくRobinずいう蚀語で曞かれたフロヌのコヌドが栌玍されおいるのではないかず話。実行時にPower Automate Desktopにキャッシュされお実行されおるようです。

図ファむルでやり取りできたらいいのにね

キャッシュされたファむルに぀いお

Power Automate Desktopで䜜成したフロヌを実行するず、以䞋のフォルダにキャッシュされお実行されおるようです。そこには拡匵子robinずいうファむルが生成されおおり、これはrobin editorにお開けるようになっおいたす。

ただし、Robin Editorで実行しおも動くケヌスず、Power Automate Desktopでないず動かないケヌスがあり、100%互換ではなく、ベヌスずしお拡匵されおるからずいう事で、察応しおいない堎合も倧いにありたすOCR関係など特に

図実行時に゜ヌスコヌドがキャッシュされる

図Robin Editorで開いおみた

盎接他のEXEを実行するテクニック

Power Automate Desktopのアクションの䞭には、EXEをフルパス指定で実行するずいったようなアクションはありたせん。甚意されおる手段で䜿えそうなのが、VBS実行、PowerShell実行、DOSコマンド実行の3぀。

VBSで実行は、こちらのコヌドを䜿っおやっおみたずころ

  • ドキュメントフォルダ以䞋のEXEであれば起動する事ができる
  • しかし、Programフォルダ以䞋のEXEは起動に倱敗する管理者暩限が必芁

DOSコマンド実行の堎合もそのたたでは同じ結果だったのですが、察象のEXEのショヌトカットをデスクトップに䜜っおおき、DOSコマンドの実行で以䞋のようにするず起動させるこずが出来たした。

  • start "dummytitle" "デスクトップのlnkぞのフルパス"

この堎合、DOS窓でstartコマンドにおlnkを叩いおるだけなので、無事にProgramフォルダ以䞋のプログラムでも起動出来たした。

フロヌの䞭から他のフロヌを実行

䜿い道があるかどうかわかりたせんが、Power Automate Desktopのフロヌの䞭から、別に䜜っおあるフロヌを呌び出す事が可胜です。手順は以䞋の通り。

  1. りィンドり内のボタンを抌すアクションを远加する
  2. ダブルクリックで線集する
  3. UI芁玠をのドロップダりンをクリックする
  4. 新しいUI芁玠の远加をクリック
  5. Power Automate Desktopのフロヌ䞀芧画面を出し、Ctrlキヌを抌しながら、そのフロヌの実行ボタンをクリック
  6. 完了をクリック
  7. 3.の䞀芧から5.で远加した芁玠を指定する
  8. フロヌを実行するず、Power Automate Desktopの5.で指定したフロヌを実行しおくれる

図UI芁玠の远加でフロヌ䞀芧のボタンを远加

PowerShellを䜿っお名前指定でフロヌを実行

きぬあさ氏がPowerShell + UI Automationを利甚しお、名前を指定しお特定のフロヌを実行する手段を開発されたした。ps1を叩くだけで実行出来るので、タスクスケゞュヌラ等を利甚すれば、時限実行も可胜なのではないかず思いたす。

[Power Automate Desktop]名前を指定しおフロヌを実行するPowerShellスクリプト

UWSCを䜿っおフロヌを実行

次項にあるRobin.exeず䌌おるものの、もっず手軜に他のEXEからフロヌを実行したいずなった堎合、叀より䜿われおきたUWSCを䜿っお、Power Automate Desktop自䜓を操䜜する事が可胜です。今回、特定のフロヌを指定しおUWSCで䜜成されたEXEを䜿っお実行のできるPadFlowRun.exeを詊しおみたした。

䜿甚手順は以䞋の通りです。

  1. こちらのサむトよりPadFlowRunをダりンロヌドする
  2. 解凍をするず、EXEが入っおるので、実行しおみる。
  3. メッセヌゞがでるので「はい」をクリックするず呌び出すコマンドラむンがクリップボヌドにコピヌされる
  4. 䟋えば、テキスト゚ディタに貌り付けお、フロヌ名だけを自分のPADのフロヌ名に曞き換えお、拡匵子BATで保存する
  5. 実行するずPadFlowRunがPAD䞊で怜玢し、該圓のフロヌを自動実行しおくれたす。

他のプログラムから簡単にPADを呌び出しお実行ができるので、䟋えばタスクスケゞュヌラに登録しお呌び出すずいった事も可胜です。

  1. Windows10の怜玢窓からタスクスケゞュヌラを実行する
  2. タスクスケゞュヌララむブラリをクリックする
  3. 右偎の「基本タスクの䜜成」をクリックする
  4. 名前を適圓に぀けお、次ぞ進む
  5. トリガヌは今回「毎日」を指定しおみたす。次ぞ進みたす。
  6. 開始する日時を指定。間隔は1日。次ぞ進みたす。
  7. 操䜜では、プログラムの開始を指定したす。
  8. プログラム/スクリプトを指定したす。䟋えば前項で䜜ったBATを指定したり、PadFlowRun.exeを指定しお、匕数にフロヌ名を指定したりしたす。次ぞ進みたす。
  9. 完了をクリックしたす。
  10. これで、タスクスケゞュヌラで実行されたす。

现かいタスクスケゞュヌラの発火タむミングを指定すれば、PADを極めお现かく柔軟に実行させる事が可胜になりたす。

図EXEが䞀個のシンプルなプログラムです

Robin.exeでPower Automate Desktopのフロヌを実行

Power Automate Desktopをなんらかの手段で盎接察象のフロヌを他から実行したいなず思うず、圓然Power Automate Desktopでは䜜れたせん。しかし、Robin Editorで䜜ったフロヌからは呌び出せるので、以䞋のような圢で、Robin Editorでフロヌを䜜っお、Power Automate Desktopの特定のフロヌを実行できるようにしおみたした。

※䜆し、Power Automate Desktopの正匏リリヌスに䌎いサむトは消滅したした

  1. Robin UI Spyを起動する
  2. Add Controlをクリック
  3. Ctrlキヌを抌しながらPower Automate Desktopの特定フロヌの実行ボタンをクリック
  4. 右䞊の名前を今回はcalcmanずしお付けお、winman.appmaskずしお保存
  5. Robin Editorを起動する
  6. 以䞋のようなコヌドを蚘述しお、script.robinずしお保存する
  7. Power Automate Desktopを起動しおおく
  8. DOS窓を開いお、robin.exe run script.robinを実行する

実行するず、起動しおるPower Automate Desktopの特定のフロヌの実行ボタンが抌されお、PAD偎でのフロヌが発火したす。

※タスクスケゞュヌラなどでこの8.のDOS窓コマンドをBATファむルにでもしおおけば、RobinからPADのフロヌを時限発火させる事ができるのではないかなぁず期埅

図appmaskを䜜成しおる様子

図Robinでフロヌを手動で構築する

図robin.exeで実行しおフロヌを実行

Power Automate DesktopをRobin.exeで起動させる

こんな感じにコマンドラむンから実行する

ミリセカンドのりェむトを入れたい

Power Automate Desktopである凊理の前にりェむトを入れたい堎合、珟圚は指定できるのが「秒」単䜍です。環境によっおはこれだずちょっず遅いなぁず思うシヌンもあるでしょう。

この察策ですが、意味のないキヌの送信アクションを入れる事で、暙準のりェむトの代わりにミリセカンド単䜍でのりェむトを実珟可胜です。意味のあるキヌだずテキストが入力されたり、コマンドが実行されおしたうので泚意。

このテクニックを䜿う事で0.5秒のりェむト等が実珟できれば暙準よりも早くアクションを実行できるので凊理時間の短瞮が出来たす。

図意味のないキヌでりェむトを代替

テキスト眮換で空癜を䜿いたい

いろいろなプログラムのコヌディングでも、倀を䞊曞きではなく「空癜」で眮き換えるこずは結構ありたす。入っおる倀を空にしたいわけなのですが、Power Automate Desktopだず空のたただずフロヌを保存出来たせん。

眮き換え先のテキストには「%''%」ずシングルコヌテヌションの空文字を%%で括ったものを指定するこずで、空で眮き換えられたす。

以䞋のようなフロヌの堎合、元の倉数の「ずうもろこし球堎」ずいう倀は、球堎郚分を空で眮き換えるので、メッセヌゞには「ずうもろこし」だけが衚瀺されたす。

図簡単な眮換のフロヌ

図眮き換えるには空の倉数を䜿う

ショヌトカットキヌを送信したい

RPAず蚀っおも、あらゆるマりス操䜜をゎリゎリ蚘憶する方法だず非垞にメンテナンス性が悪いだけでなく、確実性に劣り、たたスピヌドも遅くなりたす。その堎合、マりス操䜜ではなくキヌボヌド操䜜を組み合わせるこずで、ダむレクトにその機胜を呌び出したり実行ができるので、手数の削枛になりたす。

通垞キヌの送信では、テキスト入力欄に入力したい内容を送るものですが、キヌコヌドの送信も可胜です。たた、耇数の組み合わせたキヌである「ショヌトカットキヌ」も送れるので、印刷であったりプログラムの終了などのCtrl+Pや、Alt+F4などのキヌを送る事が可胜です。Alt+F4を送り蟌みたいのであれば、以䞋のようなコヌドを送信するテキストに蚘入したす。

{Alt}({F4})

芋たたたなのですが、@マヌクなどの特殊文字はそのたたでは入れられず、{Oem3}が@マヌクになりたす。Enterなどはそのたた{Enter}です。抌したたた別のキヌずなった堎合、二個目のキヌをで括れば、これでショヌトカットキヌずなりたす。

特殊なキヌはこちらの仮想キヌ䞀芧を参考にするず組み立おやすくなるのではないかず思いたす。

図マりス操䜜を蚘録すれば良いっおもんじゃない

URL Schemeを掻甚する

䞊蚘のキヌコヌド送信同様、りェブなどのアプリロヌカルアプリもだけれどにはURL Schemeず呌ばれるものが存圚したす。䟋えばTeamsを起動しお操䜜したい堎合、長々ずしたフロヌを䜜成しお人を探しおなんおやっおたら、非垞に面倒くさいのでここでもURL Schemeが掻躍したす。今回はデスクトップ版のTeamsを起動し、察象のアドレスの人を呌び出し、メッセヌゞの入力たでをやっおみたすが、非垞に簡単です。

  1. Power Automate Desktopでフロヌを䜜成する
  2. フロヌに、VBScriptの実行を远加する。
  3. ダブルクリックしお、以䞋のスクリプトを蚘述する
  4. 実行するず、ダむレクトにその人ずのチャット画面が立ち䞊がり、メッセヌゞが入った状態になりたす。

この1タヌンだけで、Teamsの察象者のチャット入力欄を衚瀺しおメッセヌゞたで入れた状態に遷移出来たす。マりスでやっおたら倧倉な事です。埌は送信をクリックするアクションを入れればこれで、Teamsでメッセヌゞが送信出来たす。自䜜のアプリにURL Schemeを搭茉すれば、同様の事が実珟可胜です。

もちろん、https://から始たるURLでも同様の事が可胜です。

図フロヌの䞀぀ずしお䜿えたす

Python3スクリプトを実行

珟圚、Power Automate Desktopはなぜか、Python 2.x系のスクリプトしか実行する事が出来たせん。すでにもうPython 2.xは長い歎史に終止笊を打っおサポヌト終了枈みなのですが。そのため、珟圚䞻流のPython 3.x系はアクションから呌び出すには、コマンドラむンやPowerShellなどを䜿っお呌び出すこずになりたす。

以䞋のようなPython3スクリプトを実行しおみたす。

※Pythonは様々なラむブラリのおかげで匷力な自動化を実珟できるスクリプト蚀語なので、RPAで無理に䜜らずPythonで凊理をやらせお他ぞの橋枡しにPower Automate Desktopを掻甚するず有効掻甚できるでしょう。

test.pyずしおデスクトップに配眮したこのスクリプトの実行結果は、stringsずしおprintされたものを返り倀ずしお受け取りたす。コヌドずしおは以䞋のようなコヌドになりたす。

図こんな感じで呌び出しお出力を受け取る

再むンストヌル埌に゚ラヌ頻発

再むンストヌル埌に䜕床フロヌを䜜っお保存しようずしおも、「The cache contains multiple tokens satisfying the requirements. Try to clear token cache」ずいったような゚ラヌが出お保存出来ないケヌスがありたす。せっかく䜜ったのに保存できず唖然ずしたす。自分の堎合、先皋でたしたが、再床䜜った堎合きちんず保存出来たしたが、ちょっず具合が悪いですね。

コミュニティの報告によるず、これは再むンストヌルもしくは新版で䞊曞きむンストヌルした堎合に、LocalAppData以䞋のPADフォルダ内にゎミが残っおるのが原因のようなので、アンむンストヌルし該圓のフォルダを削陀埌に再むンストヌルで解消するようです。

該圓のフォルダですが、アンむンストヌル埌に

  1. ゚クスプロヌラを起動する
  2. パスの所に「%LocalAppData%\Microsoft\Power Automate Desktop」を入力
  3. この䞭にあるファむルを削陀しお、再むンストヌル
  4. ログむンし盎す

デヌタそのものはクラりド䞊に残されおるので、ログむンできれば埩元されたす。この゚ラヌ以倖でも、Object reference not set to an instance of an object.Errorずいった゚ラヌでも同様の効果があるようです。

図倉な゚ラヌが結構出る

ZIP解凍で日本語文字化け

PADにファむルの解凍ずいうアクションがありたすが、これがZIP解凍のアクションになりたす。しかし、実際にやらせおみるず日本語ファむルが文字化けしたす。おそらく内郚的に文字コヌドの凊理がオカシむずいうロヌカラむズ䞊のよくある問題かず。しかしこれでは利甚者偎は困るので、7zipのコマンドラむン版を䜿っお解凍できるように組んでみた。

予め、7zipコマンドラむン版をドキュメント盎䞋の7zフォルダ内に配眮しお、7za.exeぞのフルパスを取埗しおおきたす。

  1. 特別なフォルダヌ取埗で、デスクトップを取埗するフロヌを远加desktoppathで蚭定
  2. 倉数を蚭定で、デスクトップにあるzipファむルのフルパスを1.ず組み合わせお远加zipfileで蚭定
  3. DOSコマンドの実行にお、「7za.exeぞのフルパス x -y -o%desktoppath%\zipman %zipfile%」ずいったコマンドラむンを远加zipmanフォルダに匷制解凍
  4. IF文を远加し、CommandErrorOutputが空の堎合は成功したメッセヌゞを衚瀺し、そうでない堎合はCommandErrorOutputの内容をメッセヌゞで衚瀺する゚ラヌトラップを远加

゜ヌスコヌドずしおは以䞋のようになりたす。もちろんパスワヌド付きも解凍出来たすし、7z圢匏も行けたす。

図excelファむル名が文字化けおる

図7zipはバッチリ解凍できる

有償のプランで䜿っおみる

今回の無償化でPower Automate Desktopの䞻芁な機胜は誰でも今すぐ利甚可胜になりたしたが、有償のプランMicrosoft365のEnterpriseや単独でPower Automateを契玄しおる方々にだけ利甚できる機胜ずいうものもありたす。サラっずだけですが調べおみたした。Microsoft365のアカりントでログむンを行いたす。自分のプランではさらに䞊䜍のプレミアムは䜿えないのですが、プレミアム契玄を行うず、プレミアムクラりドコネクタ、フロヌの自動実行、監芖機胜などがさらに䜿えるようになるみたいです。

※䜆しプレミアム契玄の殆どは今回のデスクトップフロヌの為ではなく、通垞のPower Automateの為の機胜なので、デスクトップ利甚の堎合はあたり契玄する意味はないかもしれたせん。

Dataverseデヌタベヌスが芋぀かりたせん

Microsoft365アカりント(法人アカりントを䜿っお、早速詊しおみたしたが、自分の堎合䌚瀟の方ですでにPowerAppsなどを掻甚しおるこずもあっお、䜕事もなく動䜜しおいたすが、twitterを芋おるずいく぀かの人が「Microsoft Dataverseデヌタベヌスが芋぀かりたせんでした」ずいう゚ラヌで、Power Automate Desktopが動かない人がいるようです。

これは、その法人のMicrosoft365の管理者がきちんず蚭定をしおいないのが原因です。以䞋の蚭定が必芁になりたす。

  1. 管理センタヌに入る管理者アカりントのみ
  2. 巊サむドバヌの環境をクリックするず、䞋の方にデヌタベヌスの远加がある
  3. デヌタベヌスの远加をクリックするず、蚀語は日本語を指定し、通貚はJPYを指定する。
  4. 適圓にナヌザずアクセス蚱可を蚭定しおおく
  5. 保存しおから10分くらいで反映し、タスクトレむにいるPower Automate Desktopを䞀旊終了し再床、立ち䞊げ盎す
  6. するず、゚ラヌが解消し䜜れるようになる。

以䞊は、Twitterからの情報でした。この蚭定関係のドキュメントはMS公匏ペヌゞにも蚘茉がされおいたす。たた、以䞋の手順でも同様にdataverseが䜜成されお利甚可胜になるそうです。

  1. Teamsにログむンする
  2. 巊䞋にあるアプリを開き、「承認」を怜玢しおクリックする。
  3. 承認者欄は自分自身を入れる
  4. 送信する
  5. なぜか、Power Automate Desktopでの゚ラヌがなくなる

図この゚ラヌが出たら蚭定が必芁

図Teamsで承認フロヌを䜜るず䜿えるようになるみたい

AzureADアカりントでサむンむン時

自分もActive Directoryのアカりントでサむンむンしおいるのですが、自分のケヌスでは遭遇しおいないものの、䞀郚の䌁業での構成䞊の問題なのか、Azure ADアカりントでサむンむンしようずするずサむンむンに倱敗する事䟋があるようです。

この解決法ですが初回サむンむン時に以䞋の手順で入るこずが出来たずの報告あり。

  1. 個人のMicrosoftアカりントで入力する
  2. するず、アカりント遞択画面が出おくる
  3. そこでAzure ADアカりントを遞択しおサむンむン

これで入れるそうで。理由は䞍明ですが、䜕床やっおも入れない人はお詊しあれ。ブラりザのキャッシュ削陀であったり、資栌情報マネヌゞャに登録されおるAzure ADの情報を削陀するのも効果はあるかもしれたせんが、ちょっずリスキヌなので、管理者になぜこうなるのかを問い合わせするのが䞀番良いでしょう。

䜜成枈みフロヌの共有

有償プランの人は、䜜成したデスクトップフロヌを組織の人間ず共有するこずが可胜です。ただ、プログラムの䞍具合なのか、Power Automate Desktop䞊では共有する機胜がなく共有アむテムはあるのだけれど出おこず、りェブのPower Automateにログむンしお䜜業をしたした。

  1. りェブのPower Automateにログむンする
  2. 巊サむドバヌのマむフロヌをクリックし、メむン画面の「デスクトップフロヌ」をクリックする
  3. Power Automate Desktop偎で䜜成したフロヌ䞀芧が出おくる
  4. 共有ボタンがあるので、それをクリックする
  5. ダむアログボックスのナヌザを远加に、メアドを入れる
  6. アクセス蚱可は、ナヌザ実行のみもしくは共同所有者線集可胜を割り圓おる
  7. 共有をクリックするず、共有した人間もフロヌを利甚するこずが出来るようになりたす。

無償版でも前述のように、フロヌをテキストにコピペしお枡す事ができるので、この集団で盞手ず共有すれば良いでしょう。

図䜜成シナリオを暪展開出来たす

指定時刻にフロヌを実行

Power Automate Desktop自䜓に指定時刻に䜜成したフロヌを自動実行するような仕組みは存圚したせん。しかし、Power Automateそのものに「スケゞュヌル枈みクラりドフロヌ」ずいうものがあり、こちらを利甚しお、クラりド偎から指定のデスクトップマシンのPower Automate Desktopで䜜成されたフロヌを実行できるようです自分のプランず環境ではちょっず詊せなかった。手順ずしおは、以䞋の通り。

  1. 事前にon-premise data gatewayのむンストヌルが必芁ですここで耇雑なネットワヌク構成の䌚瀟だずゲヌトりェむ甚メアドの登録に倱敗する
  2. りェブのPower Automateにログむンする
  3. 巊サむドバヌの䜜成をクリックし、スケゞュヌル枈みクラりドフロヌをクリック
  4. 適圓な名前、実行開始日付ず時間、そしお実行間隔を指定し䜜成をクリックする
  5. フロヌ䜜成画面で、新しいステップをクリック
  6. コネクタでは、「デスクトップフロヌ」を遞択する
  7. アクションに斌いお、Power Automate Desktopで構築したフロヌを実行(Premium)を遞択する
  8. 1.でセットアップが完了できれば、ゲヌトりェむ名の遞択でゲヌトりェむが出おくる
  9. ドメむンずナヌザ名は組織のADのdomainずナヌザ名を円マヌクで結合したものを入力する
  10. そしおログむンパスワヌドを入力
  11. 䜜成をクリックしお完了

これで指定時刻で䟋えば日眮きに実行などが出来たす。非垞に面倒な手順なので、条件刀定ず倉数を利甚しお、倉数にある指定時刻かどうかを刀定し指定時刻になったら実行のようなトリッキヌな手のほうがマシかもしれない。

※指定時刻ではなく䟋えば特定のメヌルを受信したら実行ずいったトリガヌを起点ずしお発火させる堎合も同様の構築が可胜になっおいたす。ただMSに望む事はこんなのは、クラむアント偎のアプリで察応するこずなので、ゲヌトりェむなど䜿わず、タスクスケゞュヌラで実行出来るようにすべきだずいうこず。わざわざなんでクラりド偎から面倒な仕組み䜿っおやらせおるのか。

図䟋えば深倜に倧きなバッチ凊理やらせる等で䜿甚

図フロヌでは各皮蚭定が必芁

Power Automate Desktop偎からPower Automateを実行

有償プランに入るず、前述のようにPower Automate偎からPower Automate Desktopのフロヌを連続しお実行出来るので、䜕かをトリガヌにしおPower Automate Desktopを実行可胜なのですが、珟実、どちらかずいうずクラりドファヌストではない䌁業のほうが倚かったりするのず、思ったほどタスクランナヌっお䜿わないので、むしろ、Power Automate Desktop偎からPower Automate偎を叩いお、りェブサヌビスを動かすほうが需芁が高いず思いたす。

Premiumアカりントの堎合、以䞋の手順でPower Automate Desktop偎からPA偎を叩けるので実行結果をTeamsに投皿などは簡単に実珟可胜です。

  1. Power Automateにログむン
  2. 巊サむドバヌからマむフロヌに入り、新しいフロヌ⇒むンスタントクラりドフロヌを遞択
  3. 最初に遞ぶトリガヌは、「HTTP芁求の受信時」を遞ぶ
  4. 芁求本文のJSONスキヌマは以䞋のようなものを入力したす。
  5. 続けお、アクションずしお、Teamsのメッセヌゞを投皿するV3を぀なげたす
  6. 既に䜜っおあるチヌムを遞びたす。たた、その䞭のチャンネルを遞びたすチャンネルが1個の堎合はGeneralを遞ぶ
  7. メッセヌゞ本文には、動的なコンテンツの䞭から、3.のmessageを遞びたす。
  8. 保存するず、3.にPOST甚のURLが生成されるので、これをコピヌしおおく
  9. このURLをPower Automate Desktopで䜿うのですが、そのたた貌り付けるず構文゚ラヌになるので、こちらのサむトでURLデコヌドする
  10. Power Automate Desktop偎で、Webサヌビスを呌び出したすアクションを远加する
  11. URLに9.のデコヌドしたURLを入力
  12. メ゜ッドはPOSTを遞択
  13. コンテンツタむプはapplication/jsonを指定する
  14. 芁求本文は今回はシンプルに{"message":"hello world"}を入れおおきたした。
  15. 詳现を開いお、芁求本文を゚ンコヌドしたすのチェックは倖しおおく
  16. 保存しお、Power Automate Desktop偎から叩くず、3.のPA偎アクションが実行されお、14.のメッセヌゞが枡されお、5.のTeamsにメッセヌゞが投皿されたす。

このPower Automate偎のフロヌにさらに続ければタスクランナヌできたす。

Power Automate Desktop偎のコヌドは以䞋のような感じ

図PA偎のPremiumコネクタを利甚したす

図URLデコヌドが必芁です

図PAD偎の蚭定内容

気になる機胜でRPAを䜜っおみた

今回のPower Automateにおいく぀か気になる機胜で簡単なRPAを䜜っおみようず思いたす。サクっず色々詊しおみた感想は、これは他のRPAにも蚀えるこずですが、プログラミングの考えが習埗出来おる人は、孊習コストは䜎いです。そうでない人は、条件分岐やむンスタンス、゚ラヌ凊理などなど䞀連の「基瀎知識」はやはり必芁。ずいっおも、実際にVBAずかでゎリゎリ最初から勉匷するよりは、はるかに䜎コストです。

OCR機胜

今回は既存で甚意されおいお今すぐ䜿えるMODIおよびTesseractの2぀をテストしおみたしたが、もうひず぀コグニティブ→Microsoft→Computer Visionにも別のOCR APIが甚意されおいたす。Googleにもビゞョンにテキスト怜出などのVision APIの項目がありたすね。有償のサヌビスですが、無償枠もあるので詊しおみる䟡倀はありそうです。

MODI OCR

※6月アップデヌトで廃止されたした

Power Automate DesktopのOCRは2皮類の゚ンゞンが利甚できるのですが、この䞭でMODI OCRは珟時点では倚くの人が䜿えず、たた非垞に叀い゚ンゞンなのでものすごく読み蟌む画像を遞びたす。よっお実甚するにはちょっずアレな機胜ですが、やっおみたした。

事前にOffice2007に含たれおいたMicrosoft Office Document Imagingずいうものが必芁でこれがMODIの本䜓です。無償化されたSharePoint Designer 2007にも含たれおいたようですが、珟圚はもう配垃されおいたせん。そこで、Webarchiveを利甚しお入手し(430MBもある)、Office Document Imagingのみをむンストヌル埌に再起動しお、以䞋の画像を読み蟌んでみたした。

図Wikipediaのずあるテキストを画像化しおおいた

以䞋の手順でRPAを組んでいたす。

  1. MODI OCR゚ンゞンを䜜成を远加。
  2. OCRを䜿っおテキストを抜出を远加。OCR゜ヌスはディスク䞊の画像で、ファむルパスでフルパスを指定。OCR゚ンゞンは1.で䜜った゚ンゞンの倉数を指定したす。
  3. テキストファむルに曞き蟌みたすを远加。ファむルパスはフルパスでresult.txtを指定。曞き蟌むテキストは2.の倉数を指定。䞊曞きで゚ンコヌドはUnicodeを指定

これで実行するのですが、いろいろな画像を読み蟌たせたしたが、殆どで゚ラヌ。認識できない文字や蚘号があるずNGのようです。

図3぀のステップのみで構築

OCR結果は以䞋の通り

京王 6000 系電車は、京王電鉄京王線甚の通勀圢電車である。 1 972 幎から 1991 幎に 304 䞡が補造され、 20n 幎たで運甚された。郜営地䞋鉄新宿線乗り入れを前提に蚭蚈され、京王で初めお 20m 玚の車䜓を採甚した。京王線党線・郜営地䞋鉄新宿線で運甚されたのち、 1 998 幎から 20n 幎 3 月にかけお事業甚車に改造された 3 䞡ず静態保存された 1 䞡を陀いお廃車・解䜓された。䞉倚摩地区開発による沿線人口の増加、盞暡原線延䌞による倚摩二ュヌ倕りン乗り入れ、郜営地䞋鉄 10 䞎線く埌の郜営地䞋鉄新宿線、以䞋、新宿線ず衚蚘する乗入構想により、京王線の利甚客増加が芋蟌たれ、盞圓数の車䞡を準備する必芁に迫られるなか、補造費甚、保守費甚を抑えた新型車䞡ずしお 6000 系構想された。 
 


Tesseract OCR

もう䞀぀甚意されおるOCR゚ンゞンがTesseractで、オヌプン゜ヌスで開発されおるOCR゚ンゞンです。結構昔から開発されおるようで、珟圚最新版は、v5.0ずしお甚意されおいたす。実際に䜿っおみたしたが、MODIず違っお読み取れる画像を遞ぶずいったこずもなくお、問題なく取り蟌めたした。

しかし、Power Automate Desktopで暙準で甚意されおる読み取り先蚀語が英語やスペむン語など5ヶ囜語のみで、日本語が入っおいたせん。ずいうこずで以䞋の事前準備をしたす。

  1. このペヌゞにあるむンストヌラをダりンロヌドしおむンストヌルする今回は64bitを遞びたした。
  2. むンストヌル埌、むンストヌル先にあるtessdataずいうフォルダを適圓にデスクトップにコピヌするこの䞭に日本語の蚀語ファむルが入っおる

今回は以䞋のファむルを読み蟌たせおみたした。

図結構耇雑な文字が混じっおるWikiのずあるペヌゞ

以䞋の手順でRPAを組んでいたす。

  1. Tesseract OCR゚ンゞンを䜜成を远加。ダブルクリックで蚭定を倉える
  2. 他の蚀語を䜿うのスむッチをオンにしお、蚀語の省略圢はjpnを指定。蚀語のデヌタパスはデスクトップにコピヌしたtessadataを指定する
  3. OCRを䜿っおテキストを抜出を远加。OCR゜ヌスはディスク䞊の画像で、ファむルパスでフルパスを指定。OCR゚ンゞンは1.で䜜った゚ンゞンの倉数を指定したす。
  4. テキストファむルに曞き蟌みたすを远加。ファむルパスはフルパスでresult.txtを指定。曞き蟌むテキストは2.の倉数を指定。䞊曞きで゚ンコヌドはUnicodeを指定

これで実行させおみたした。オプション蚭定以倖は特に゚ラヌもなくすんなり読み蟌めたした。若干オカシナ郚分もありたすが、倧䜓きれいにOCR出来おいたす。

図ここのオプション蚭定が肝です

OCR結果は以䞋の通り

子実䜓は高さ5-8cmあるいはそれ以䞊に達し、頭郚ず明瞭な柄ずで構成される。頭郚は党䜓ずしおは歪んだ球状をなし、衚面には著しい凹凞やしわを生じお脳状の倖芳を持ち、黄耐色ないし赀耐色を呈する。柄は倪く円柱状でしばしば浅い瞊じわを有し、類癜色ないしクリヌム色で倚少ざら぀く。瞊断面では、頭郚は䞀枚の円盀状の子実局所 (胞子圢成郚結実郚 : Hymenophore) が耇雑か぀䞍芏則に折りたたたれた構造を有し、柄の内郚にもしばしば䞍芏則な空隙を生じおいる。

子裏は现長い円筒状ないしこん棒状を呈し、無色で倧圢か぀薄壁、ペり玠溶液で青く染たらず (未熟な子電では现胞質が黄耐色に染たるが、青倉するこずはない) 、先端に薄い円盀状で明瞭な蕎 (Operculum) を備え、内郚に8個の子衰胞子を生じる。子芁胞子は広怿円圢で無色・薄壁

10パヌセントの氎酞化カリりム氎溶液䞭で芳察するず䞡端にさく䜎いクッション状をなした附属䜓 (Apicula) が認められ、ペり玠溶液で呈色するこずはなく、しばしば2個の小さな油滎を含み、1個の栞を有する。 子裏に混じっお、無数の偎糞 (䞍皔菌糞) が芋出され、少数の隔壁を有し、その先端は僅かに膚れるずずもに赀耐色の占粒を含んでいる。 子実䜓を構成する菌糞は無色・薄壁で、隔壁郚で匱くくびれるこずがあり、かすがい連結を持たない。柄の衚面においおは、菌糞の先端が掋ナシ状ないし球状に膚れるが、顕著に発達した衚皮䞊局をなすこずはない䞭!。

Google Cloud Vision API

前述぀のOCRは正盎前時代的ずいうか、叀い時代のOCRの仕組みであるため、粟床は正盎良いずは蚀えたせん。そこで䜿うのが有償になりたすが、Google Cloud Vision API。コグニティブにあるアクションでかなり簡単に利甚出来たす。

MicrosoftのAzureにもComputer Visionずいう同様のAPIが甚意されおいたすが、Azureは個人的にごちゃごちゃしおいお䜿いにくいので、GoogleのAPIを自分は䜿っおたす。

Power Automate DesktopでCloud Vision APIを䜿ったOCRを実珟

スクショを取っおメヌルで送る

ずあるアプリで画面に゚ラヌが出お、ヘルプデスクに助けを求める。スクショを取っお⇒なぜかExcelに貌り付ける⇒メヌルに添付しお⇒ヘルプデスクのアドレスを入れお⇒本文曞いお⇒送る。こんな凊理なのですが、たずスクショのずり方知らない人が倚い。よしんば知っおいおもなぜかExcelに貌り付けお送っおくるものだから、画像が小さすぎお芋えない・・・なんで、Excelに貌り付けるのか理解に苊しむ。間違ったアドレスにヘルプを求めるずいったこずが結構あったりしたす。

ずいうこずで、今回これを自動化するRPAを぀くっおみたした。難点はそのたただずPower Automate Desktopがスクショに入っおしたうので、こい぀を最小化しおからスクショを撮る必芁がある点をRPAに加えおおく必芁がある事です䜜成画面ではなく䞀芧からなら、この凊理はいらないんですけれどね

以䞋の手順でRPAを組んでいたす。

  1. りィンドりの取埗を远加。ダブルクリックしお、フォアグラりンドりィンドりを指定する
  2. りィンドりの状態の蚭定を远加。ダブルクリックしお、怜玢モヌドを「りィンドりのむンスタンス/ハンドルごず」を指定。りィンドりむンスタンスは1.で蚭定したものを遞択。りィンドりの状態は「最小化」を指定する
  3. スクリヌンショットを取埗を远加。ダブルクリックしお、察象はすべおの画面を指定、スクリヌンショットはファむルずし、保存先を指定拡匵子たで付けたフルパス、画像の圢匏はjpgを指定。
  4. 入力ダむアログを衚瀺を远加。ダブルクリックしお、入力の皮類を耇数行に倉曎する。
  5. IFを远加。4.のButtonPress倉数を芋お、OKならばxxxx、ELSEを远加し、キャンセル時の凊理ずする
  6. 5.でOKの時ずいう圢でオプション指定をしおおき、ELSEずの間にメヌル送信の凊理を远加しおいく
  7. Outlookを起動したすを远加。
  8. Outlookからのメヌルメッセヌゞの送信を远加。アカりントは自身のメアドグルヌプアドレスも行けるかも。宛先、本文は4.の入力倀の倉数を指定する。
  9. 8.に続けお、添付ファむルでは、3.で指定したフルパスをそのたた入れるこれなんで倉数じゃないんだろう・・・
  10. 最埌にメッセヌゞを衚瀺を远加。終了した旚の通知を入れる。この埌に7.のむンスタンスを閉じる凊理を入れおもいいんだけれど、環境によっおは5分埌に送信ずかだず、Outlookからただメヌル送っおないよっおメッセヌゞが出おしたうので今回は入れおいない。
  11. この埌送信埌に、3.のフルパスのファむルを削陀する凊理を入れおも良いかもしれない。
  12. ELSE偎にはキャンセル時なので、メッセヌゞを衚瀺を远加。

実際に詊しおみた所、RPAを起動するず

  1. Power Automate Desktopが最小化
  2. スクショ撮圱
  3. プロンプトが出るので、゚ラヌ内容を蚘述しおもらう
  4. OKクリックでOutlook起動、ファむル添付、メッセヌゞ远加、そしお送信
  5. 終了メッセヌゞ

ずいう䞀連の䜜業を半自動化ずいう圢のRPAを䜜れたした。ナヌザは宛先を気にせず、たたスクショ撮圱でもた぀かず、入れるのも本文のみなので、確実に゚ラヌ画面を情シスに送り蟌めたす。このフロヌを有料アカりントならば党瀟員に共有し、なにかあったら実行しお指瀺に埓えで枈みたす。぀いでにTeamsに通知ずかあっおも面癜いかもしれない

※メヌルを送信ではなくOutlookを起動を遞んでいる理由は、Microsoft365のExchange Serverを䜿っおる堎合、SMTP送信が甚意されおいないケヌスがあるため。SMTPサヌバが甚意できるならば、メヌルを送信を远加でも可ではないかず思いたす。

図こんな感じに凊理を䜜っおみたした。

図りィンドり最小化をしないずRPAの画面が取れおしたう

Excelのマクロ実行でシヌトPDF化埌に党郚結合する

実務ではよくあるのですが、各担圓䌚議甚資料をバラバラに持っおきお、それらを個別に印刷⇒䞀枚ず぀拟っおはホチキス止めずいう非生産的な仕事が事務にはよくあったりしたす。これらは䞀床PDF化した埌に、pdfasのような結合゜フトを䜿っお䞀枚にし、それから印刷をすれば䞀枚䞀枚拟う必芁がありたせん。これをRPAを䜿っお、個別のファむルをPDF化⇒1枚のPDFに結合⇒印刷たでをサクっず終わらせるずいうものをやっおみたした。

今回はExcelファむル1個なのですが、マクロを仕蟌んでおり、シヌトを枚ず぀PDFにしお指定のフォルダに入れおいたす。Power Automate Desktopには印刷のメ゜ッドはあっおもPDF化するメ゜ッドは無いので、こういう所はマクロの出番です。䜿甚させお頂いたマクロはこちらのコヌドです。

以䞋の手順でRPAを組んでいたす。Excelファむルはマむドキュメント盎䞋に栌玍しおいたす。

  1. 特殊なフォルダヌを取埗を远加。特殊なフォルダヌの名前では個人甚を遞択これがMyDocumentらしい。これを入れるこずで人毎に異なるMyDocumentのパスを自動刀定で取っおくれたす。
  2. Excelの起動を远加。ドキュメントパスは1.のパスに\食虫怍物.xlsmず付け加えたパスを指定しおあげおいたす。䟋%SpecialFolderPath%\食虫怍物圚庫.xlsm
  3. Excelマクロの実行を远加。内郚でsample2()ずいうマクロが存圚しおるので、マクロでその関数名を指定したす。ここで、各シヌトが個別のPDFずしおpdfずいうフォルダに栌玍されたす。
  4. Excelを閉じるを远加。
  5. フォルダヌ内のファむルを取埗を远加。フォルダは3.の出力先を指定したいので、1.のパスずpdfを組み合わせたパスを指定䟋%SpecialFolderPath%\pdf\
  6. ぀づけおフィルタはPDFのみなので、*.pdfずしおワむルドカヌドを指定。
  7. PDFファむルを統合を远加。PDFファむルでは、5.の倉数でファむルの䞀芧ずしお指定。統合されたPDFのパスは3.ず同じパスを指定しおみたした。
  8. ドキュメントの印刷を远加。既定のプリンタでしか印刷が出来たせんが、これで問い合わせ無しで印刷が実行されたす。
  9. メッセヌゞを衚瀺を远加。印刷完了のメッセヌゞを衚瀺しお、RPA実行完了。

担圓者には指定のフォルダにでも突っ蟌んでおいおもらい、それぞれには予めPDF化のマクロを仕蟌んでおく。For eachルヌプでも䜿っお順番にマクロを実行しお、PDF化。のちにそれらを統合しお印刷実行。ずたで組み䞊げれば、資料の䜜成手間が倧幅に枛るのではないかず思いたす。いく぀か工倫は必芁ですが。

たた、PDF化をRPAでなんずかしようずせず、簡単なマクロ䞀個で実珟出来る事なので、積極的にマクロも組み合わせるほうが楜にRPAは䜜れたす。

図今回のフロヌはこんな感じ。䞀連の䜜業を䞀塊にした。

図PDF結合郚分のフロヌ

ExcelデヌタをJSON化→GASにPOSTで送信

Excelの衚デヌタを読み蟌んで、Google Spreadsheetに仕蟌んで斌いたdoPost宛にREST APIずしおデヌタを送り蟌んで远蚘するずいったこずをPower Automate Desktopにやらせおみたいず思いたす。ちょっず耇雑なので、詳现に蚘述をしおみたいず思いたす。

䜿甚する玠材

事前準備

Google Spreadsheetには以䞋のdoPostでデヌタを受け付けるコヌドが入っおいたすので、事前にコピヌし、以䞋に蚭定倉曎ずデプロむが必芁です。

  1. スクリプト゚ディタを開く
  2. コヌド.gsのssidにスプレッドシヌトのIDを蚘述する
  3. デプロむボタンをクリックし、新しいデプロむを遞択
  4. デプロむする時に今回は認蚌なしで受け付けるので、アクセスできるナヌザを党員に蚭定する
  5. デプロむボタンをクリックしたら、URLが出るのでコピヌする
  6. 読み蟌むExcelデヌタはダりンロヌドしたら自分のドキュメントフォルダ盎䞋に配眮したす。

゜ヌスコヌド

Power Automate Desktop偎

以䞋のコヌドをコピヌしお、貌り付けるずフロヌが構築されたす。構築されたら、りェブサヌビスを呌び出したすの項目におダブルクリックし、URLの欄に事前準備の5.でコピヌしたexecで終わるURLを蚘述しお保存したす。

今回のフロヌは以䞋のような構成です。

  1. ドキュメント盎䞋のtest.xlsxを読み蟌み
  2. Excelワヌクシヌトを読み取りでは、詳现にお範囲の最初の行に列名が含たれおいたすにチェックを入れおいたす。これがJSONのキヌになる
  3. リストを甚意これがJSONの土台になりたす- jsonmanずいう倉数名
  4. For eachで読み蟌んだExcelデヌタをJSONに倉換。
  5. 構築埌にテキストの結合を利甚しお、3.のデヌタカンマ区切りに倉曎する
  6. POSTで送り蟌む甚に、5.のデヌタにexcelmanずいうキヌを付け、5.のデヌタは[]の配列ずしお構築し盎す。
  7. りェブサヌビスを呌び出すで、GAS偎のURLをPOSTで叩く。この時、詳现におリダむレクトに远埓するにチェックが必芁。
  8. たた、芁求本文を゚ンコヌドするのチェックは倖したした。
  9. 芁求本文には6.でセットした倉数を指定する
  10. 実行結果がGAS偎からreturnされおくるので、それを受け取っおメッセヌゞボックスで衚瀺する

図REST APIを叩く時にもお䞖話になりたす

GAS偎コヌド

  • GAS偎では、JSON化されたデヌタをPower Automate Desktopで受け取っおいたす。
  • 受け取ったデヌタを1行ず぀配列ずし、appendRowで曞き蟌んでいたす。

サブフロヌ掻甚で凊理を分岐

プログラム開発でもある皋床倧きな凊理は、凊理パヌトを分けお、倧元の関数から条件に応じお呌び出すようにするのが開発テクニックずしお普通に行われおいたす。同じフロヌの䞭で蚘述しおも良いのですが、凊理が倧きければ倧きいほど、芋通しが悪くなり、メンテナンスも行いにくくなりたす。Power Automate Desktopもこの「凊理を分岐させお条件に応じお呌び出す」ずいった事が可胜になっおいたす。それがサブフロヌ。

基本的にはIF ELSE ENDを䜿い、それぞれの䞭でサブフロヌの実行アクションを入れお、凊理の䞭身はサブフロヌの偎に蚘述しおいくこずになりたす。今回は起動時に出勀か退勀かをナヌザに遞ばせお、それぞれのケヌスに応じおサブフロヌを実行する半自動化で䜜っおみおたす。出勀ならばSelectIndexの倀が1なので、incomeを実行。退勀ならば0なのでoutgoingを実行ずいった感じです。たた、今回のサむトでは出勀・退勀をクリックする郚分が「iFrame」で䜜られおしたっおるので、凊理に「iFrame内の゜ヌスURLを指定しおそこにペヌゞを移動」の凊理を入れおいたすPuppeteerでもよくこの手の凊理を行いたす。

クリックが実行されたら最埌にブラりザを閉じるこずで完了ずなりたす。実際のコヌドは以䞋の通りです。

図メむンフロヌ内で凊理分岐でサブフロヌを呌び出す

図サブフロヌではそれぞれの実行凊理を蚘述する

SQLを利甚しおExcelデヌタを47郜道府県別に振り分け

ごちゃごちゃになっおるデヌタベヌスに察しお、特定の列でフィルタをし、それらをそれぞれのシヌトに振り分けるずいうのは結構転蚘の事䟋では倚いのではないでしょうか今回、Power Automate DesktopのみでExcel VBAを利甚せずにSQLを利甚しお分類しデヌタを振り分けるサンプルを䜜っおみたした。

䜿甚する玠材

今回䜿甚するODBCドラむバは、本来Accessに付属のモノなのですが、Accessが無くずも、Microsoft Access デヌタベヌス ゚ンゞン 2016 再頒垃可胜コンポヌネントをむンストヌルすれば、Microsoft.ACE.OLEDB.12.0ずしお利甚する事が可胜です。

実挔動画

Power Automate DesktopでExcelからSQLを䜿っおデヌタを振り分け

実行速床もたずたずです。手䜜業でこんな䜜業しおたら䜕分掛かるこずやら。。フィルタもSQLで䞀発なので、これから先のRPAを歊噚にする事務員はSQL文も勉匷したしょう。

゜ヌスコヌド

  1. data.xlsxのフルパスずdatabase.xlsxのフルパスを指定したす。
  2. data.xlsxのSheet1からは47郜道府県のデヌタを取埗しお、デヌタテヌブル列をリストに远加ずいう圢でリスト型の倉数を䜜りたす。
  3. SQL接続を開くを利甚しお、xlsxに察しお接続文字列で接続したす。xlsxの堎合には、Provider=Microsoft.ACE.OLEDB.12.0;data source=%ExcelPath%;extended properties="Excel 12.0 Xml;HDR=Yes";ずいう圢になりたす。%ExcelPath%がdatabase.xlsxぞのフルパスの倉数を割り圓おおたす。
  4. ルヌプでリストを回しお、郜道府県名を1個 %Prefecture%ずいう圢で取埗しおおきたす
  5. SQLステヌトメントの実行にお、デヌタの塊にSQL文をなげお、デヌタの塊を取り出したす。条件は郜道府県が%Prefecture%ず合臎するもの。SQL文はSELECT * FROM [Sheet1$] WHERE [prefecture] = "%Prefecture%"になりたす。文字列なので倉数に""を括るのを忘れずに
  6. デヌタが取埗出来たら、新しいシヌトをdata.xlsxに新しいシヌトを%Prefecture%にお䜜成、アクティブにしたす。
  7. Excelワヌクシヌトに曞き蟌みにお、5.で取埗した結果をセルの1列目1行目に䞀発曞き蟌みしたす。
  8. 埌は郜道府県分だけぶん回すず、5000件のダミヌデヌタが郜道府県別に振り分けされおいきたす。
  9. GROUP BYずいったものだけでなく、SUMやCOUNT、INSERTやUPDATE文なども䜿えるようです。

ODBCドラむバがあれば、AccessデヌタベヌスやMySQLなども䜿えたす。特にAccessの堎合はクロス集蚈ク゚リが䜿えたりするので、予めAccess偎で䜜り蟌んで斌けば、クロス集蚈をした結果を䞀発で取埗ずいった荒業も可胜です。

図Excelに察しおSQL文をぶん投げお抜出する

トラブルシュヌティング

無線LANにアクセスできなくなる

WPA2-Enterpriseのような、瀟内LAN接続に蚌明曞を䜿っお接続するタむプの接続方法を取っおいる䌁業に斌いお、Power Automate for Desktopをむンストヌル埌に無線LAN接続ができなくなるずいう珟象が報告されおいたす。この原因は、PADがむンストヌル時に様々な蚌明曞をむンストヌルする事によっお、既存の蚌明曞が䞊曞きされおしたい、結果無線LANに接続できなくなるずいう結構倧きな問題です。

こちらの問題点の解消に぀いおは、こちらのブログの゚ントリヌにお回避方法が提瀺されおいたす。PADを瀟内展開する前に実隓機でテストをし、同様の症䟋にぶ぀かるようであれば、回避策を講じる必芁があるでしょう。

参考動画

Power Automate Desktop 分デモ | 日本マむクロ゜フト

Power Automate for desktop 高速凊理の実隓

Automate It. Episode 10 - Power Automate Desktop RPA & SAP

How to automate desktop-based tasks with Power Automate Desktop

Taiki Yoshida - Modernize your old apps with Power Apps and Power Automate

Power Automate Desktop版を孊がうむンストヌルフロヌ䜜成デモも

関連リンク

Microsoft Power Automate DesktopでRPAを実珟しおみる” に察しお11件のコメントがありたす。

  1. よしお より:

    よしおず申したす。

    詳しい蚘事をありがずうございたす
    倧倉参考になりたした。

    ちょうど、コマンドプロンプトからフロヌの実行を暡玢しおいたので、
    「Robin.exeでPower Automate Desktopのフロヌを実行」は特に興味深かったです。

    手前味噌ですが、「PadFlowRun.exe」ずいうフロヌを呌び出すだけのものを公開しおおりたす。
    UWCSずいうもので䜜っおexe化したものです。
    Stream Deck甹 ずしおいたすが、「PadFlowRun.exe “フロヌ名”」ずいう蚘述でコマンドからも実行できたす。

    Robin run からの実行ですず動䜜開始たで少し時間がかかりたすが、こちらですず少し早く動きたすし、フロヌ名で指定できるので、すこしだけ楜かもしれたせん。
    よければ詊しおいただけたらず思い、コメントさせおいただきたした。

    https://yoshio-akz.blogspot.com/2021/03/stream-deck-power-automate-desktop.html

    1. akanemaru2017 より:

      よしお様

      officeの杜管理人です。さすがのUWSCですね。倧昔から自動化で貢献しおきたツヌルだけありたす。
      早速詊しおみようず思いたす。

      UWSCだず、䜕かをトリガヌにしお発火ができるずいうので、Power Automate Desktopず違い、バックグラりンドで埅機させお、トリガヌひかれるのを埅おる
      ずいうので、組み合わせたら、面癜い事ができそうですね。

      䜿っおみた感想をブログに蚘茉しおも良いですか

      1. よしお より:

        akanemaru2017 様

        詊しおいただいおありがずうございたす

        返信ありがずうございたす。
        ブログに蚘茉倧䞈倫です。むしろ掲茉しおいただけたら嬉しいです

        今のずころ、ずりあえずやっおみた的な簡単なスクリプトなので、自分が䜿っおお䞍䟿な事や、芁望があれば拡匵しおいこうかなず思っおいたす。
        䜕かあればお知らせいただけたしたら幞いです。

        1. officeの杜 より:

          よしお様

          蚘事に远加しおみたした。ずっおもシンプルで簡単で、非垞に良いスクリプトですね。タスクスケゞュヌラからの呌び出しでも難なく実行できたした。

          VBAや他のプログラムからも単玔にEXEず匕数だけで行けるので、VBAからの流れで呌び出したり、Pythonで凊理した埌にPADで凊理させるみたいなこずもできそうですね。

          1. genepine より:

            こんばんは 無償版Power Automateで毎月1回などをトリガヌにしお発火したいず、怜玢しおたどり着きたした。
            > UWSCを䜿っおフロヌを実行
            > https://bit.ly/3CSj63m
            >䟋えば、テキスト゚ディタに貌り付けお、フロヌ名だけを自分のPADのフロヌ名に曞き換えお、拡匵子BATで保存する
            で、フロヌ名が挢字を含む堎合、フロヌ名を曞いたbatファむル自䜓をSHIFT-JISで保存しないず「芋぀かりたせん」ず出お実行できたせん。

  2. みずぐち より:

    ミズグチずいいたす。瀟内事務凊理が簡玠化できないかず勉匷䞭です。
    䞊で説明されおいる郜道府県別の振り分け等ずっおも参考になりたす。

    初歩的で申し蚳ないんですが、ご存じでしたら、ず思いコメントしたす。
    先日䜜成したフロヌを実行しようずPowerAutomateDesktopを起動し、
    保存枈のフロヌを線集しようずするず、準備しおいたす、のメッセヌゞ埌、
    「通信゚ラヌコン゜ヌルずデザむナヌ間の接続が確立されたせんでした。
    Power Automate Desktop を再起動しお、もう䞀床実行しおください。
    関連付けIDcca90c78-a8c3-4445-adb7-c10c9e86ac3c ”クリップ
    ボヌドぞコピヌ”マヌクずOKボタン」ず出おから線集画面が開きたす。
    開きたすが、フロヌを実行させるず「ステヌタス解析䞭」
    のたた、䜕も始たらないし、延々解析したたたです。

    圓初保存したのず異なるマむクロ゜フトアカりントで操䜜しようずしおいた
    ので䞀旊ログアりトし、再床ログむンしなおしおも同様でした。

    なかなか玠人には難しいです、お知恵を貞しおいただければ幞いです。

    1. officeの杜 より:

      みずぐち様
      officeの杜管理人です。

      アカりントが個人アカりントなのかMicrosoft365アカりントなのかわからないので、なんずも蚀えないのですが、もし最近アップデヌトした埌ずいうこずならば、この゚ントリヌの途䞭にある

      「再むンストヌル埌に゚ラヌ頻発」を参考に、䞀旊、アンむンストヌルをしお残っおるゎミファむルを削陀し、再床最新版を入れ盎しおから、同様の䜜業をやっおみおください。

      Power Automate Desktopはただただバギヌな面があり、特にアプデ盎埌はこのような䞍可解な゚ラヌが出おいたす。たた、コヌドはテキストファむルにコピペで取っおおけるので、䞇が䞀の為にも、せっかく䜜ったコヌドが保存されず終わるこずのないように、取っおおくず良いでしょう。

      こちらでも同様の質問が出おいたすね。

      個人のMicrosoftアカりントで今確かめおみたしたが、最新版では特に゚ラヌが出おいないので、ありえるずしたら叀いバヌゞョン䜿甚による問題、もしくはOneDriveがいっぱいになっおるなどの問題のどちらかではないかず。

  3. みずぐち より:

    ご連絡遅くなりたしおすみたせん、回答ありがずうございたす。
    あれからpowerautomatedesktop再むンストヌルしお問題なく䜿えおいたす。
    䜕がどうだめだったのかよくわかりたせんが動いたのでペシずしおいたす。
    PC はロヌカルアカりントでログオンしおいお、PAD䜿甚時に郜床マむクロ゜フトアカりントにログオンしおいたす

    powerautomateの無償版desktopは、フロヌの共甚ができない、ずいうこずで、台のPCずもにロヌカルアカりントで起動で
    ①PC_マむクロ゜フトアカりントmizu、で通垞䜿甚
    ②PC_マむクロ゜フトアカりントnaji、で通垞䜿甚
     ずしおいるずころに、

    ①のPCで②のnajiアカりントでPADのフロヌ:a)を䜜成・保存し、
    ②のPCで②のnajiアカりントでログオンしおフロヌ:a)を䜿う、

    ですずかは、しおはダメなんでしょうか
    なんだか説明わかりづらいですね、別パ゜コンで動䜜確認しお実皌働は別PCで、ずいうこずです

    PADそのものが起動するずきに゚ラヌサむンむン䞭に゚ラヌが発生したした、管理者にお問合せ䞋さいが②で出たす。これは䞀䜓

    郜床ログむンしたらいいんでしょう、なんおいう、適圓な凊理ではダメみたいですね
    なかなか奥深いです。

    1. officeの杜 より:

      みずぐちさん

      おはようございたす。
      PADは未だ進化䞭故、特に初期から䜿っおる人の堎合、アプデ時にトラブルが出がちなので、その際は再むンストヌルが䞀番効果がありたす。

      さお、フロヌ共有ですが、そもそもフロヌはアカりントに玐付けされお、実行時にダりンロヌドOneDriveやDatavarseからされお実行されるので、みずぐちさんの䜿い方で問題ないです。
      共有は䞊䜍プランになりたすが、゚ントリヌにもあるように、フロヌをコピペで枡す事はできるので、手間ではありたすが、完成品ならば違うアカりントにフロヌをテキストかなにかで枡しお、構築
      しおあげればOKです。

      起動する時の゚ラヌもPC②偎のPADを䞀床再むンストヌルしおみるず良いず思いたす通垞のMSアカりントず䌁業アカりントの切り替えも本来はできるはずですが

      1. みずぐち より:

        みずぐちです
        コメント返信ありがずうございたす。䞊蚘の䞍具合ですが珟段階での最新バヌゞョン2.121.7121216を再むンストヌルしお解消されたした。
        PowerAutomateCommunityですずか芋おいおも「バヌゞョンアップ埅ちたすか」みたいな曞き蟌みがありたした、やっぱりなです。
        ご盞談いただきたしおありがずうございたす。今埌も参考にさせおもらいたす。

        1. officeの杜 より:

          みずぐち様

          無事になんずかなったようで良かったです。
          ただただβ版的な立ち䜍眮ですが、続々ず新機胜ず独特な機胜が远加されおきおるので、これたでのRPAずはたた違ったものにブラッシュアップされおいくのではないかず思いたすが、
          同時に倉な挙動もあるず思うので、アップデヌトは慎重に ですね。

officeの杜 ぞ返信する コメントをキャンセル

メヌルアドレスが公開されるこずはありたせん。 ※ が付いおいる欄は必須項目です

日本語が含たれない投皿は無芖されたすのでご泚意ください。スパム察策