Power Automate Desktopで拠点別の勤怠を自動集計する方法

Power Automate Desktopで拠点別の勤怠を自動集計する方法

拠点ごとに勤怠システムやタイムカードの締め処理が別々になっていて、月末になると各拠点の勤怠Excelを1つずつ開き、出勤・退勤の時間を管理表へ手で転記している。

そんな運用の会社は珍しくありません。

拠点数が増えるほど、この転記だけで担当者の作業時間を圧迫します。

拠点によって列の並びや書式が微妙に違うと、転記の途中で貼り付け先がずれたことにすら気づけないこともあります。

ここでは、Power Automate Desktopを使って、拠点別の勤怠Excelを1つの管理表へ自動で集計する手順と、打刻の抜け漏れを見つけて人の確認につなげる仕組みを整理しています。

拠点別勤怠の自動集計を無料で相談する

拠点別の勤怠Excelが1つの管理表に自動でまとまる

Power Automate Desktopで組む場合、拠点別の勤怠Excelは共有フォルダに置いたまま自動化できます。

決まったタイミングでフローが起動し、フォルダ内の勤怠ファイルを1つずつ開いて出勤・退勤のデータを読み取り、あらかじめ用意した管理表へ行として追加していきます。

対象になるのは、拠点や部署ごとにバラバラのExcelファイルを毎月手作業で集計している担当者です。

デスクトップ上でExcelを直接操作するPower Automate Desktopなら、拠点数が多くファイル形式にもばらつきがある勤怠集計でも、無人実行で最後まで通しやすくなります。

勤怠ファイルの置き方と形式を揃える

自動集計を安定させるには、フローを組む前に勤怠ファイル側を整えておく必要があります。

拠点ごとに形式が違うという状態のままフローを組もうとすると、条件分岐だらけの複雑なフローになってしまいます。

準備のポイントを整理すると、次のようになります。

準備項目

内容

置き場所の統一

拠点別の勤怠Excelを1つの共有フォルダにまとめる

ファイル名ルール

拠点名や年月をファイル名に含める。例: 勤怠_東京_202607.xlsx

シート構成の統一

出勤・退勤・氏名などの列名と並び順を拠点間でそろえる

管理表の用意

転記先の管理表にも、同じ列構成のシートをあらかじめ作っておく

まず形式をそろえるのが、拠点ごとに違う勤怠ファイルを扱うときの一番の近道です。

形式さえそろえば、後続の手順は拠点数が増えても同じロジックで対応できます。

Power Automate Desktopで勤怠を自動集計する手順

ここでは、共有フォルダに集まった拠点別の勤怠Excelを1つずつ読み込み、管理表へ順番に追記していく流れを組みます。

Step1. フォルダ内のファイルを取得する

「フォルダー内のファイルを取得」アクションで、事前準備で統一した共有フォルダを指定し、ファイルフィルターを*.xlsxにして勤怠Excelだけを一覧として取得します。

サブフォルダも対象にしたい場合は、このアクションの「サブフォルダーを含む」オプションを有効にしておきます。

Step2. 各ファイルをループで開いて読み取る

Step1で取得した一覧を対象に「For each」でループを組みます。

ループの中では「Excelの起動」アクションで現在処理中の勤怠ファイルを開き、「Excelワークシートから読み取る」アクションで出勤・退勤・氏名などの列をデータテーブルとして取得します。

「範囲の最初の行に列名が含まれます」オプションをオンにしておくと、見出し行がデータとして紛れ込むのを防げます。

Step3. 管理表へ転記する

管理表用のExcelファイルを別のExcelインスタンスで開き、「Excelワークシートから最初の空の列や行を取得する」アクションで書き込みを始める行を取得しておきます。

Step2で読み取った勤怠データを「Excelワークシートに書き込む」アクションで、その空き行から書き込みます。

どの拠点のデータかが後から分かるよう、ファイル名から拠点名を取り出して、拠点列に一緒に書き込んでおくと管理表を見返すときに役立ちます。

Step4. 保存して閉じる

全ファイルのループが終わったら、「Excelを保存する」アクションで管理表を上書き保存し、「Excelを閉じる」アクションで各Excelインスタンスを閉じます。

処理済みの勤怠ファイルを本番フォルダに置いたままにすると翌月以降に二重集計する原因になるため、読み込み終えたファイルを別の完了フォルダへ移動する処理を、Step2のループの最後に組み込んでおくと安全です。

拠点別勤怠を自動集計する設定手順の4ステップ。フォルダ内のファイルを取得→各ファイルをループで開いて読み取る→管理表へ転記する→保存して閉じる

打刻漏れ・不整合データの検知を組み込む

勤怠集計で怖いのは、転記そのものより、元データにある打刻漏れや矛盾に気づかないまま管理表が完成してしまうことです。

Power Automate Desktopには、こうしたデータを自動修正するのではなく、あやしい行だけを別シートへ書き出して人に確認してもらう仕組みを組み込めます。

検知しておきたいパターンを整理すると、次のようになります。

検知ルール

内容

対応の考え方

打刻漏れ

出勤または退勤の列が空欄になっている

「空のセルを取得」アクションで空欄の行を検出し、確認用シートへ書き出す

時刻の逆転

退勤時刻が出勤時刻より早い

IF条件で出勤時刻と退勤時刻を比較し、条件に合わない行を確認用シートへ書き出す

極端な勤務時間

実働時間が想定より大きく外れている

実働時間を計算した列を条件でチェックし、しきい値を超えた行を確認用シートへ書き出す

これらの行は自動で書き換えず、確認用シートに残して担当者が本人や拠点に確認する運用にしておくのが安全です。

打刻ミスの背景は本人にしか分からないことが多く、フロー側で推測して書き換えると、かえって間違った記録が残ってしまいます。

定期実行についても触れておきます。

Power Automate Desktop単体では、Windowsのタスクスケジューラにフローの実行コマンドを登録しておく形で、毎月決まった日にフローを自動起動できます。

クラウド上のトリガーでフローを起動したい場合は、Power AutomateのPremiumプランでのクラウドフロー連携が選択肢になります。

似た仕組みは、複数拠点のCSVをExcelへ統合する場面にも応用できます。

勤怠管理そのものをGoogle Apps Scriptで組みたい場合は、こちらもあわせて参考になります。


拠点別勤怠の自動集計について相談してみませんか?

「拠点ごとに勤怠ファイルの形式が違って毎回手直しが発生する」「打刻漏れに気づかず月末に慌てることがある」「毎月の集計作業から抜け出したい」

Power Automate Desktopによる業務自動化に関するお悩みをお伺いする 無料の個別相談 を実施しています。

勤怠ファイルの自動集計でよくある質問

Q. 拠点ごとに形式が違う場合はどうすればいいですか?

まずは事前準備の段階で、列名と並び順を拠点間でそろえるのが近道です。

どうしても形式をそろえられない拠点がある場合は、Step2の読み取り処理の中に拠点別の条件分岐を用意し、列の対応関係だけをフロー側で吸収する形にします。

Q. 個人情報を含む勤怠データを扱ううえで注意することはありますか?

勤怠データには氏名や出退勤時刻といった個人情報が含まれるため、フローが参照する共有フォルダやファイルのアクセス権限を、業務上必要な範囲の担当者だけに絞っておく必要があります。

これは勤怠集計に限らず、個人情報を含むファイルを自動化フローで扱う際の一般的な注意点です。

Q. Power Appsで勤怠システムごと作る場合とはどう使い分ければいいですか?

この記事の方法は、既存の勤怠Excelファイルはそのままに、集計だけを自動化するアプローチです。

打刻の仕組みそのものから作り直したい、複数拠点からの入力をアプリで一元化したいという場合は、Power Appsで勤怠システムを新規に構築する選択肢のほうが向いています。