Excelで店舗・部門別の労働時間を集計|SUMIFSの式と分→時間の例
店舗と部門の両方で労働時間を絞り込むなら、SUMIFSで条件を二つ指定します。ここではD列を店番、E列を部門コード、H列を数値の分として、8行の架空データを集計します。先に合計を分で求め、最後に小数時間または時間・分の表示へ変換すると、単位の混同を避けられます。
編集:シフトエンジン。参照した公式資料と確認日は本文末尾に掲載しています。
D列=店番、E列=部門、H列=分の練習表を用意する
これは操作を確認するための架空の記録です。集計対象はこの表にある日付の全件で、月や給与締め期間を自動判定する式ではありません。実務では対象期間で抽出した表を使うか、日付条件も追加します。重複記録がないか、休憩を控除した分か、予定と実績のどちらかも元データでそろえてください。
空のシートでD列・E列の表示形式を先に「文字列」にし、次のタブ区切りをD1へ貼り付けます。H列は数値のままにします。H8は未入力、H7は確認済みの0分です。0分の行を使う理由は職場で確認し、空欄の代わりに埋めないでください。
店番 部門コード 勤務日 記録ID 労働時間(分)
001 010 2026/11/2 R001 480
001 010 2026/11/3 R002 510
001 020 2026/11/2 R003 300
002 010 2026/11/2 R004 450
001 010 2026/11/4 R005 480
001 010 2026/11/5 R006 0
001 010 2026/11/6 R007
002 020 2026/11/2 R008 240| 列 | 用途 | 入力の例 |
|---|---|---|
| D | 店番 | 文字列の001・002 |
| E | 部門コード | 文字列の010・020 |
| F | 勤務日 | 2026/11/2 |
| G | 記録ID | R001。二重取り込みの確認用 |
| H | 労働時間(分) | 480・510などの数値。未確認は空欄 |
SUMIFSで店番と部門コードを同時に指定する
J1を店番、K1を部門コード、L1を合計分とします。J2に文字列の001、K2に文字列の010を入力し、L2に次の式を入れます。D列もE列も条件を満たす行だけをH列から合計します。
この例は480+510+480+0で1470分です。H8の空欄は加算されませんが、これだけで全件確認済みとは判断できません。合計対象、店番、部門の範囲はすべて2~9行にそろえます。行を追加する場合は三つの範囲を同時に広げてください。
L2:=SUMIFS($H$2:$H$9,$D$2:$D$9,J2,$E$2:$E$9,K2)| J列:店番 | K列:部門コード | L列:合計分 | 対象行 |
|---|---|---|---|
| 001 | 010 | 1470 | 2・3・6・7・8行。8行目は未入力 |
| 001 | 020 | 300 | 4行目 |
| 002 | 010 | 450 | 5行目 |
| 002 | 020 | 240 | 9行目 |
| 999 | 010 | 0 | 該当行なし |
この節の参照資料:Microsoft「SUMIFS 関数」
空欄・数値0・文字列の分を区別してから確定する
SUMIFSの合計だけでは、未入力を含む途中の値と、確認を終えた値を見分けられません。I1を入力確認とし、I2に次の式を入力してI9までコピーします。数値の0は「数値」、空欄は「未入力」、文字列の480や負数は「要確認」となります。
見た目が480でも文字列なら数値として集計されないことがあります。文字列の分を見つけたら元データと単位を確認して数値に直します。すべてを一律に0へ変えたり、エラーを隠したりしないでください。ISNUMBERは文字列を数値へ自動変換せずに判定できます。セル自体がエラー値の場合も、集計前に原因を解消します。
I2:=IF(H2="","未入力",IF(ISNUMBER(H2),IF(H2>=0,"数値","要確認"),"要確認"))| H列の状態 | I列の結果 | 集計前の扱い |
|---|---|---|
| 数値480 | 数値 | 分の入力として加算 |
| 数値0 | 数値 | 確認済み0分かを記録で確認 |
| 空欄 | 未入力 | 未確認として残す |
| 文字列480 | 要確認 | 元データを確認して数値へ直す |
| 数値−30 | 要確認 | 訂正行などの意味を確認。通常の分と混ぜない |
この節の参照資料:Microsoft「IS 関数」
該当なしの0と、未入力を含む1470分を見分ける
M1を該当行数、N1を未確認行数、O1を状態とします。I列の入力確認式を全行に入れた後で、以下を2行目に入力します。M列は一致する記録の行数で、従業員の人数ではありません。
店番001・部門010は該当5行のうち1行が未入力なので「要確認」です。1470分は現時点の数値行の小計として使い、完成した実績とは扱いません。店番999は該当0行なので「該当なし」です。数値0だけの記録がある場合は、該当行数が1以上で未確認行数が0になります。
M2:=COUNTIFS($D$2:$D$9,J2,$E$2:$E$9,K2)
N2:=COUNTIFS($D$2:$D$9,J2,$E$2:$E$9,K2,$I$2:$I$9,"<>数値")
O2:=IF(M2=0,"該当なし",IF(N2>0,"要確認","確認済み"))| 店番/部門 | 該当行数 | 未確認行数 | 状態 |
|---|---|---|---|
| 001/010 | 5 | 1 | 要確認 |
| 001/020 | 1 | 0 | 確認済み |
| 002/010 | 1 | 0 | 確認済み |
| 999/010 | 0 | 0 | 該当なし |
この節の参照資料:Microsoft「COUNTIFS 関数」
1470分を24.5時間または24:30で表示する
L2の1470は分なので、小数時間なら60で割ります。P1を小数時間とし、P2へ=L2/60を入力すると24.5です。24.5は24時間50分ではなく24時間30分です。
時間・分で表示したい場合は、Q1を累計時間とし、Q2へ=L2/1440を入力します。Excelの時間値は1日を1として扱うため、分から変換するときは1日分の1440で割ります。デスクトップ版Excelのセルの書式設定でユーザー定義を[h]:mmにすると24:30と表示できます。h:mmでは24時間で折り返すため、この例は0:30になります。
Microsoftの案内ではWeb版はカスタム数値形式の設定に制約があります。設定できない環境では小数時間のP列を使うか、書式を設定できるデスクトップ版で確認してください。表示形式は入力の誤りや未確認行を解消するものではありません。
P2:=L2/60
Q2:=L2/1440
Q2の表示形式:[h]:mm| 合計分 | 小数時間(÷60) | 累計時間(÷1440、[h]:mm) |
|---|---|---|
| 1470 | 24.5 | 24:30 |
| 300 | 5 | 5:00 |
| 450 | 7.5 | 7:30 |
| 240 | 4 | 4:00 |
| 0 | 0 | 0:00 |
この節の参照資料:Microsoft「Excel で時間を加算または減算する」
先頭ゼロと期間・重複を取り込み時にそろえる
店番001を数値として取り込んだ後で文字列に変えても、失われた桁は自動で戻りません。元のコード体系を確認し、D列・E列・J列・K列で同じ形式を使います。001と1を別の識別子として扱う運用では、SUMIFSだけで区別できると決めつけず、S001などの接頭辞付きコードに統一するなど、照合方法を別途確認してください。
同じ行を二度取り込むとSUMIFSも二度加算します。G列の記録IDや元ファイルを使って重複を調べ、予定と実績、確定前と確定後のファイルを混ぜないようにします。このページの式は入力済みの分を集計するもので、勤務開始・終了から休憩を算出したり、給与の割増を計算したりするものではありません。
- 対象の開始日・終了日と、予定/実績の区分を先にそろえる。
- 店番と部門コードの形式を、元データと集計条件で一致させる。
- I列の未入力・要確認を確認し、合計値だけで完了にしない。
- 記録IDの重複を調べ、転記後は元表の小計とも照合する。
参考資料・記事について
公式資料の機能説明・制度案内を参照し、手順と記入例は当サイトで作成しています。想定例・試算は実在する店舗の実績ではありません。制度やサービスの条件は変更される場合があるため、参照先の最新情報もご確認ください。
- Microsoft:SUMIFS 関数確認日:2026年10月30日
- Microsoft:Excel で時間を加算または減算する確認日:2026年10月30日
- Microsoft:IS 関数確認日:2026年10月30日
- Microsoft:COUNTIFS 関数確認日:2026年10月30日
よくある質問
店番だけで合計するなら式はどう変えますか?
この練習表なら=SUMIFS($H$2:$H$9,$D$2:$D$9,J2)です。J2が001なら数値行の小計は1770分です。ただし未入力のH8も同じ店番なので、合計だけで確認済みとは判断しません。
H列の480は8:00に書式変更すればよいですか?
いいえ。480分という数値をそのまま時刻書式にしても8時間にはなりません。時間値なら480/1440、小数時間なら480/60へ変換してから、それぞれの表示形式を設定します。
SUMIFSが0なら労働時間がなかったという意味ですか?
必ずしもそうではありません。条件に合う行がない、コードの形式が違う、分が文字列になっている、未入力だけという場合もあります。該当行数と入力確認列を併せて見てください。
この式で従業員数や時間帯の必要人数も分かりますか?
分かりません。合計するのは入力済みの労働分です。該当行数も同じ人の複数記録を含むため人数とは異なります。時間帯の在席人数は開始・終了・休憩を使う別の集計で確認します。
次に確認したいこと
時間と分の変換方法を確認する
関連する解説や記入例を、ご自身の確認したい内容に合わせてご利用ください。