SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Power Automate Desktopチュートリアル

Windows10の無償デスクトップ自動化ツール「Power Automate Desktop」で、キーボードによる操作を自動化する

Power Automate Desktopチュートリアル 第15回

キーボード操作のフローを作成する

 UI要素によっては絶対座標を必要とするため、ウィンドウの状態や位置がデザイン時と異なるなど状況でフローを実行すると、意図しない結果になることがあります。同じことをする手順でもキーボード操作の方が確実に実行できる場合があります。

 そこでキーボード操作のアクションで、枠線を引いたり太字にしたり揃えを変えたり背景色を付けるサンプルフローを作成します。ただし、UI要素の位置を使うアクションでは、UIオートメーションのアクションも併用します。

[1]あらかじめExcelで今月のカレンダー.xlsxを開く

 「マウスでのUI操作フローを作成する」フローで使用したブックのシートを開いた状態にします。

[2]新しいフローを作成する

 タスクバーでPower Automate for Desktopを開きます(開いている場合は選択します)。

 Power Automate for Desktopのトップ画面から[+新しいフロー]をクリックして、適当な名前で新規のフローを作成します。

[3]左上のセルを選択

 [UIオートメーション]アクショングループから[ウィンドウのUI要素をクリック]アクションを配置します。設定ダイアログが開いたら、以下のように選択(=該当UIの赤枠でCtrl+クリック)した上で、設定を保存します。

  • UI要素:(Excelウィンドウ上のC4セル)
[4]右上のセルまで選択する

 [マウスとキーボード]アクショングループから[キーの送信]を配置します。

図:キーの送信アクションの配置
図:キーの送信アクションの配置

 設定ダイアログが開くので、送信するテキストでキーに対応する文字を指定します。通常の文字であればキーの文字を指定するだけですが、特殊キーの場合は、[特殊キーの挿入]ドロップダウンで選択して入力できるキー名の文字列で指定します。また、[Ctrl]や[Shift]など、同時に押すキーを指定する場合には、[修飾キーの挿入]ドロップダウンで入力できる式を使用して指定します。

図:修飾キーの挿入
図:修飾キーの挿入
図:特殊キーの挿入方向キー右
図:特殊キーの挿入方向キー右

 Excelでは、値が入力されたセルを選択した状態で[Ctrl]+[Shift]+[→]を押すことで、現在のセルから右方向に値のある部分を選択できます。このアクションで実現します。

図:キーの送信アクションの設定
図:キーの送信アクションの設定

 キーの送信の送信するテキストで、[修飾キーの挿入]で[Control]を選択すると{Control}()と入力されます。()の中に同時に押すキーを入れます。()の中にカレットを置いて、[修飾キーの挿入]で[Shift]を選択すると、{Control}({Shift}())となります。再び()の中にカレットを置いて、[特殊キーの挿入]で[方向キー]―[右]とすることで、{Control}({Shift}({Right}))となり、実行時に[Ctrl]+[Shift]+[→]を押すことを意味します。

 以下の設定を確認して保存します。結果の式を直接入力することもできます。

  • 送信するテキスト:{Control}({Shift}({Right}))

 これで実行時にはカレンダーの曜日部分が選択されている状態になります。

[5]太字にする

 [マウスとキーボード]アクショングループから[キーの送信]を配置します。太字にするショートカットキーは[Ctrl]+[B]です。

図:キーの送信アクション(太字)の設定
図:キーの送信アクション(太字)の設定

 以下の設定をして保存します。

  • 送信するテキスト:{Control}({B})
[6]背景色を選択する

 [マウスとキーボード]アクショングループから[キーの送信]を配置します。

 Excelで[Alt]キーを押すと、リボンにショートカットキーの対応が表示されます。対応するようにキーを入力することで、キーボードのみでリボンが操作できます。ここではセルの背景色を付与します。

図:キーの送信アクション(背景色)の設定
図:キーの送信アクション(背景色)の設定

 以下の設定を追加して保存します。

  • 送信するテキスト:{Alt}({H}){H}{Down}{Down}{Right}{Right}{Right}{Right}{Right}{Right}{Right}{Right}{Return}
[7]右下のセルまで選択する

 [マウスとキーボード]アクショングループから[キーの送信]を配置します。直前のアクションと同様に[Ctrl]+[Shift]+[↓]を押すことを表す文字列を送信するテキストに入力します。

図:キーの送信アクション(下端まで選択)の設定
図:キーの送信アクション(下端まで選択)の設定

 以下の設定を追加して保存します。

  • 送信するテキスト:{Control}({Shift}({Down}))

 実行時にはカレンダー部分全体を選択した状態になります。

[8]外枠の罫線を引く

 [マウスとキーボード]アクショングループから[キーの送信]を配置します。[Alt]+[H]-[B]-[T]と押すことで選択領域の外枠の罫線を引きます。

 以下の設定を追加して保存します。

  • 送信するテキスト:{Alt}({H}){B}{T}
[9]中央揃えにする

 [マウスとキーボード]アクショングループから[キーの送信]を配置します。[Alt]+[H]-[A]-[C]と押すことで選択領域各値を中央揃えします。

 以下の設定を追加して保存します。

  • 送信するテキスト:{Alt}({H}){A}{C}
[10]作成したフローを実行する

 前節のフローの最後の状態になっていることを確認してフローを実行します。

図:フロー実行後
図:フロー実行後

 新たなフローを作成して、今回のサンプルを順に貼り付けたフローを実行して、最初のファイルからフローを実行して最終形になることを確認することができます。

 UIオートメーションやキーボード操作の説明のために、既存のExcelブックを開いた状態でのフローのサンプルを説明しましたが、Excelアクションも使ってExcelを開いたりデータの入力を行ったりすることで、操作対象のファイルがない状態から作成するフロー作ることもできます。さらに他のアクションと組み合わせたり、Excel以外のアプリケーション操作を組み合わせたりして、業務作業の自動化フローらしいアプリケーション操作の自動化や複数のアプリケーション間の連携などを実現することができます。

まとめ

 Power Automate for DesktopのフローからWindowsのアプリケーションのExcelをUIオートメーションやキーボードでの操作をフロー化する方法を紹介しました。これらのアクションを使用することで、専用のアクションが用意されていないどんな複数のアプリケーションでも操作を自動化できるため広く応用の可能性があります。

この記事は参考になりましたか?

連載通知を行うには会員登録(無料)が必要です。
既に会員の方はを行ってください。
Power Automate Desktopチュートリアル連載記事一覧

もっと読む

この記事の著者

WINGSプロジェクト 飯島 聡(WINGSプロジェクト イイジマ サトシ)

WINGSプロジェクトについて>有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。 2026年時点での登録メンバは約50名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書記事多数。 RSS X: @WingsPro_info(公式)、@WingsPro_info/wings(メンバーリスト) Facebook

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

山田 祥寛(ヤマダ ヨシヒロ)

静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるLaravel実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/16695 2022/11/09 11:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー