仕事に差がつく!阿久津良和「Microsoft 365のスゴ技」 第20回
Power Automate Desktopを使い、勤怠管理システムを簡単に作る方法
2021年04月06日 10時00分更新
本連載は、マイクロソフトのソリューション「Microsoft 365」に含まれるSaaS型デスクトップ&Webアプリケーション(以下、アプリ)「Office 365」について、仕事の生産性を高める便利機能や新機能、チームコラボレーションを促進する使い方などのTipsを紹介する。
Microsoft 365 Appsを使いこなして仕事を早く終わらせたい皆様にお届けする本連載。今回はPower Automate Desktopに注目する。
フロー実行時の日時をExcelファイルに書き込む
業種や所属する部門によって異なるものの、日常業務の一部分は同じことを繰り返しているにすぎない。そのような場面に生かせるのがRPA(ロボティック プロセス オートメーション)だが、先頃Microsoftは自社RPAソリューションのPower Automate Desktopを追加費用なしで利用可能にした。同社が米国時間2021年3月17日にリリースしたWindows 10 Insider Preview ビルド21337でも、Windows Terminalと共にPower Automate Desktopを標準アプリとして組み込んでいることからも、同社のローコード/ノーコード開発基盤に対する注力具合をうかがえる。Power Automate Desktop無償使用時は、フローをOneDriveに格納する個人版(Microsoftアカウントでサインイン)と、Microsoft Dataverse(旧Common Data Service。以下、Dataverse)に格納する組織版(職場または学校のアカウントでサインイン)と2つの方法を用意。Microsoft 365 Appsを対象にしている本連載であれば後者を選択すべきだが、Dataverseの準備が整わなかったため、本稿では前者で話を進める。Dataverseに関心をお持ちの方は[公式ドキュメント]を参照してほしい。
さて、今回は勤怠管理システムを導入していない中小企業向けに超簡易的なフローを用意した。Power Automate DesktopからMicrosoft Excel(以下、Excel)を起動し、出社・退社を選択したら、現在の日時を取得してExcelのワークシートに書き込んで保存するというものである。
まずはアクションとして「現在の日時を取得します」を実行する。タイムゾーンは日本時間を選択する「システムタイムゾーン」で構わない。次に出社・退社を選択するダイアログを起動するため「リストから選択ダイアログを表示」を実行する。任意のタイトルを付けて、「選択元のリスト」は「Start」「End」の2種類を用意。他の項目を選択できないように「リストに制限」をオンにするとよい。続いて「Excelの起動」で既存のExcelワークシートファイルを開く。この際「インスタンスを表示する」をオフにすると、Excelが起動しないので素早くフローを実行できる。最後に書き込み対象となるワークシートを指定する「アクティブなExcelワークシートの設定」を実行。一種のおまじないだと捉えるといいだろう。「ワークシート名」は「Sheet1」など実際のワークシート名を入力する。
ここからは条件分岐だ。Power Automate Desktopはif/thenも用意しているが、今回はアクションとして「Switch」を使用することにした。これなら出社・退社以外の要素を加えた場合でも容易に対応できるからだ。チェック対象値としてドロップダウンリストで選択した値を格納した「%SelectedItem%」を選択するのだが、この際「{×}」をクリックすると先のアクションで実行した変数をGUIで参照できる。次に「Case」を2つ作成。演算子は「先頭」。比較値は「Start」「End」を各自指定する。一方のCase内で「Excelワークシートに書き込み」を実行し、書き込む値として「%SelectedItem%」、「書き込みモード」は「指定したセル上」、行列は「1」「1」を指定。続けて「Excelワークシートに書き込み」を実行して、書き込む値を現在の日時を格納した「%CurrentDateTime%」を指定。セルの書き込みは「2」「1」とする。最後にフローを実行する際の上書きを避けるため、空の行を挿入する「Excelワークシートに行を挿入」を実行すればよい。もう一方のCaseである「End」も同様のアクションとなるため、アクションをコピー&ペーストすれば完成だ。
本稿執筆にあたって初めてExcel関連アクションを使ってみたが、「アクティブなExcelワークシートの設定」の実行が必要であることと、変数指定時に「%」で囲む作法につまずいた点を除けば小一時間でフローを書くことができた。業務内容をアクションに置き換えることで、一部業務の自動化が可能であることをご理解いただけただろう。
この連載の記事
-
第61回
Team Leaders
「Copilot for Microsoft 365」のダッシュボードが登場 -
第60回
Team Leaders
生成AIに“本気”なMSが進める「Copilot for Microsoft 365」のアップデート -
第59回
Team Leaders
中小企業にも開放されたMicrosoft Copilot for Microsoft 365 -
第58回
Team Leaders
ハイブリッドワーク時代にデータ漏えいを防ぐ「アイドルセッションタイムアウト」 -
第57回
Team Leaders
ファイル共有ハブへと進化するOneDrive 3.0 -
第56回
Team Leaders
ExcelとPythonが融合! 「Excel in Python」 -
第55回
Team Leaders
プレビュー版でも使えるBing Chat Enterprise -
第54回
Team Leaders
Microsoft 365から特定アプリ(コンポーネント)を除外する -
第53回
Team Leaders
Microsoft 365に加わった新配信チャネルの役割は新機能検証用? -
第52回
Team Leaders
Build 2023で発表されたMicrosoft 365の新機能 -
第51回
Team Leaders
AIによる支援が加わったMicrosoft DesignerはSNS向けソリューション? - この連載の一覧へ