案件別の労務原価は、担当者ごとの実績時間に、その作業へ適用する原価単価を掛けて合計します。単価を改定する場合は、工数の行ごとに確定単価を数値で残すと、過去の原価を保ったまま新しい記録を追加できます。
無料Excelの作例は、2人で進めたWebページ更新です。旧単価3,000円と新単価3,500円を分けて保存し、11時間の労務原価は31,500円になります。単価が未入力なら、その案件の原価と売上との差額を保留します。
案件別労務原価の無料Excelをダウンロード。登録不要。3シート・6明細の架空の記入例と数式入りです。開いたら時間を1か所変える操作を試してください。白紙から作る方は表と数式の設定へ進めます。
2人の工数から、記録済みの原価31,500円を計算する
| Webページ更新 P01 | 金額・時間 |
|---|---|
| 入力した実績時間 | 11時間 |
| 記録済みの労務原価 | 31,500円 |
| 案件売上・税抜 | 90,000円 |
| 売上−記録済み労務原価 | 58,500円 |
| 差額率 | 65.0% |
この58,500円は、記録済み労務原価だけを引いた差額です。外注費・材料費などの直接費と、今後の作業は含めていません。案件別の採算管理に使う途中の確認値として読み、完成時の最終利益とは分けてください。売上と原価は同じ案件・同じ対象範囲でそろえます。

日々の記録と案件別集計をまとめて使いたい方へ
工数・案件管理 Excelテンプレートは、300案件・3,000行の工数記録・20名のメンバーを扱う販売テンプレートです。案件別の予定・実績・原価と、メンバー別の稼働状況を確認する画面を用意しています。
最初にメンバーと案件を登録し、「工数記録」のE列に時間、J列に作業時の確定原価単価を数値で入力します。同じP01の4明細を入れると、「案件一覧」のM7は31,500円、N7は58,500円です。J列への単価入力は手動です。

購入後にダウンロードするのは、Excelと説明テキストをまとめたZIPです。案件別の集計式や予定工数との比較画面を設定せずに、継続して記録を始めたい方に向いています。
無料Excelを開き、時間を変えて試す
ダウンロードしたファイルをコピーして開きます。「工数明細」のD7を4から5へ変えてください。F7は12,000円から15,000円、「案件集計」のE7は31,500円から34,500円へ変わります。案件集計F7の差額は55,500円です。確認後は工数明細D7を4へ戻します。
黄色は入力欄、薄緑は数式の欄です。実績時間は小数で入れます。30分は0.5、1時間30分は1.5です。「1:30」という時刻や「1.30」という数値とは区別してください。1行は1人・1案件の作業で、0〜24時間を入力できます。
自分の案件へ置き換える入力範囲
| シート | 置き換えるセル |
|---|---|
| 担当者 | A7:D10。担当コード・氏名・現在単価・変更メモ |
| 案件集計 | A7:C16。案件ID・案件名・売上の税抜額 |
| 工数明細 | A7:E36とH7:H36。日付・案件ID・担当コード・時間・確定単価・メモ |
例の入力を消すときは、上のセルの内容だけを削除します。行全体は削除せず、工数明細F・G列と案件集計D〜I列の数式を残してください。担当者、案件、工数明細の順に登録すると、未登録コードの警告を直しやすくなります。
案件IDと担当コードは、P01・M01のような半角英数字に統一し、重複させないでください。アスタリスク・疑問符・チルダは集計条件で特別な意味を持つため、コードに使いません。入力した明細のG列がすべて「OK」、案件集計C4が0になったら結果を確認できます。
無料教材は10案件・30明細・担当者4名まで数式を設定済みです。新しい明細は13行目から順に追加できます。36行目を超える場合は、明細の数式・入力規則と、集計式の「36」を新しい最終行まで一緒に広げてください。案件や担当者を増やす場合も、G列の参照範囲を広げます。
単価改定の前後を同じ案件に残す
青木の原価単価は10月14日まで3,000円、10月15日から3,500円とします。森は2,500円のままです。ここでの単価は説明用の仮定で、標準相場ではありません。実務では、請求用の時給と区別して自社で決めた原価単価を使います。
| 工数明細の行・担当 | 時間 × 確定単価 = 労務原価 |
|---|---|
| 7行目・10/14 青木 | 4 × 3,000 = 12,000円 |
| 8行目・10/14 森 | 3 × 2,500 = 7,500円 |
| 9行目・10/16 青木 | 2 × 3,500 = 7,000円 |
| 10行目・10/16 森 | 2 × 2,500 = 5,000円 |
| P01の合計 | 11時間・31,500円 |

現在単価を変えても、過去のE列は書き換えない
試しに「担当者」のC7を3,500から4,000へ変更します。「工数明細」のE7は3,000、E9は3,500のままです。P01の原価31,500円も変わりません。確認後は担当者C7を3,500へ戻してください。
これはE列へ確定した数値を入力しているためです。Excelが日付から適用単価を自動判定しているわけではありません。新しい作業を記録するときに、作業日へ適用する単価を確認してE列へ入力してください。過去の工数を遅れて入力する場合は、現在単価ではなく当時の単価を使います。
現在単価を参照する数式をE列へ入れると、単価表の変更に合わせて過去行も再計算されます。参照式で値を確認してから保存する運用なら、対象セルをコピーし、同じ場所へ[形式を選択して貼り付け]の[値]で戻してください。数式バーに「=」で始まる式が残っていなければ、数値として保存できています。Microsoftの貼り付けオプションで、数式と値の違いを確認できます。
単価の適用日や承認者が必要な業務では、H列のメモや自社の単価記録へ残してください。数値で保存した単価も、手作業で上書きすれば変わります。締めた期間は別名のコピーを保管し、訂正した理由を残します。
単価の空欄と0円を分けて、誤った差額表示を防ぐ
工数明細E7だけを空欄にすると、G7は「単価未入力」、F7は「要確認」になります。案件集計H7は「明細を確認」となり、P01の原価・差額・差額率は空欄です。入力済みの残り19,500円だけをP01の原価として確定しません。

E7へ数値の0を入れた場合は、原価0円として計算します。P01の原価は19,500円、売上との差額は70,500円になります。原価を計上しないと判断した作業だけ0にし、単価が分からない状態は空欄で残してください。試した後は3,000へ戻します。
| 表示・症状 | 確認する場所 |
|---|---|
| 単価未入力 | 工数明細E列。空欄や文字を数値に直す |
| 時間を確認 | 工数明細D列。空欄・文字・負数・24超を確認 |
| 案件IDを確認 | 明細B列と案件集計A列。同じIDが1件だけあるか |
| 担当コードを確認 | 明細C列と担当者A列。未登録・重複を直す |
| 作業日を確認 | 明細A列。2000〜2099年の時刻を含まない日付を入れる |
| 案件集計C4が1以上 | 明細G列を全行確認。所属先がない明細も数える |
| 集計状態が未記録 | 登録した案件の明細がまだない。実績0とは区別する |
P01に入力不備があっても、P02の計算は表示します。一方、全案件の合計18行目は、不備や未記録の案件が残ると保留します。案件IDが未登録の行はどの案件へ戻すべきか分からないため、個別の結果だけを見ずC4も確認してください。
白紙から同じ表と数式を作る
「案件集計」「工数明細」「担当者」の3シートを作成します。数式でこの名前を参照するため、表記をそろえてください。担当者のA6:D6は「担当コード・氏名・現在単価(円/h)・適用・変更のメモ」です。A7:D8に「M01・青木・3500・10/15改定、旧3000」「M02・森・2500・変更なし」を入力します。
| シートと行 | 左から順に入れる見出し |
|---|---|
| 工数明細 A6:H6 | 作業日/案件ID/担当コード/時間(h)/確定単価(円/h)/労務原価(円)/入力確認/作業・単価のメモ |
| 案件集計 A6:I6 | 案件ID/案件名/売上(税抜円)/記録時間(h)/労務原価(円)/売上との差額(円)/差額率/集計状態/不備行数 |
案件集計A7:C8には「P01・Webページ更新・90000」「P02・バナー制作・40000」を入力します。明細7〜10行目は上のP01の4行です。11行目へ「2026/10/17・P02・M01・1.5・3500」、12行目へ「2026/10/17・P02・M02・2・2500」をA〜E列に入れます。H列は作業や単価のメモです。
A列の日付は日付形式、時間は数値・小数点以下2桁、円は数値・桁区切り、差額率はパーセント・小数点以下1桁にします。入力文字を小さくせず、列幅と行高を広げてください。以下の式は先頭セルへ貼り付け、指定の範囲を下方向へコピーします。コピー後は最終行の参照先も確認します。
明細の入力確認を作り、時間と単価を掛ける
「工数明細」のG7へ次の式を入れます。G36までコピーしてください。 初期例は「OK」です。すべて未入力の行は空欄、入力途中の行は該当する警告を表示します。
=IF(COUNTA(A7:E7,H7)=0,"",IF(OR(B7="",COUNTIFS(案件集計!$A$7:$A$16,B7)<>1),"案件IDを確認",IF(OR(C7="",COUNTIFS(担当者!$A$7:$A$10,C7)<>1),"担当コードを確認",IF(NOT(ISNUMBER(A7)),"作業日を確認",IF(OR(A7<DATE(2000,1,1),A7>DATE(2099,12,31),A7<>INT(A7)),"作業日を確認",IF(NOT(ISNUMBER(D7)),"時間を確認",IF(OR(D7<0,D7>24),"時間を確認",IF(NOT(ISNUMBER(E7)),"単価未入力",IF(E7<0,"単価を確認","OK")))))))))
「工数明細」のF7へ次の式を入れます。F36までコピーしてください。 G列がOKの行を計算します。F7は12,000円。無料教材では1円未満を行ごとに四捨五入してから合計します。
=IF(G7="","",IF(G7<>"OK","要確認",ROUND(D7*E7,0)))
F36はD36・E36・G36を参照します。G36の案件範囲は$A$7:$A$16、担当者範囲は$A$7:$A$10のままです。日付やコードの登録先を広げた場合は、この固定範囲も広げてください。
案件ごとの不備行数と集計状態を先に作る
「案件集計」のI7へ次の式を入れます。I16までコピーしてください。 同じ案件IDの全明細からOKの明細を引き、不備の件数を出します。初期例は0です。
=IF(A7="","",COUNTIFS(工数明細!$B$7:$B$36,A7)-COUNTIFS(工数明細!$B$7:$B$36,A7,工数明細!$G$7:$G$36,"OK"))
「案件集計」のH7へ次の式を入れます。H16までコピーしてください。 案件と売上がそろい、1件以上の正常な明細があれば「記録分を集計」です。
=IF(COUNTA(A7:C7)=0,"",IF(OR(A7="",B7=""),"案件を確認",IF(COUNTIFS($A$7:$A$16,A7)<>1,"ID重複",IF(NOT(ISNUMBER(C7)),"売上を確認",IF(C7<0,"売上を確認",IF(I7>0,"明細を確認",IF(COUNTIFS(工数明細!$B$7:$B$36,A7,工数明細!$G$7:$G$36,"OK")=0,"未記録","記録分を集計")))))))
案件IDごとに時間・原価を合計し、差額を計算する
「案件集計」のD7へ次の式を入れます。D16までコピーしてください。 P01は11時間です。
=IF(A7="","",IF(H7<>"記録分を集計","",SUMIFS(工数明細!$D$7:$D$36,工数明細!$B$7:$B$36,A7,工数明細!$G$7:$G$36,"OK")))
「案件集計」のE7へ次の式を入れます。E16までコピーしてください。 P01は31,500円、P02は10,250円です。
=IF(A7="","",IF(H7<>"記録分を集計","",SUMIFS(工数明細!$F$7:$F$36,工数明細!$B$7:$B$36,A7,工数明細!$G$7:$G$36,"OK")))
SUMIFSの最初の範囲が合計対象です。その後に案件IDと入力確認の条件を並べます。条件範囲と合計範囲は、いずれも7〜36行でそろえています。
「案件集計」のF7へ次の式を入れます。F16までコピーしてください。 P01は90,000−31,500=58,500円です。
=IF(COUNT(C7,E7)<>2,"",C7-E7)
「案件集計」のG7へ次の式を入れます。G16までコピーしてください。 P01は65.0%です。売上0円の案件は、差額だけを表示し差額率は空欄にします。
=IF(COUNT(C7,F7)<>2,"",IF(C7=0,"",F7/C7))
所属先がない明細を含め、全件の不備を確認する
案件集計A4に「全明細の入力不備(件)」と書きます。案件ごとのI列だけでは、未登録IDの明細を見つけられないため、C4で明細全体を数えます。
「案件集計」のC4へ次の式を入れます。このセルだけに設定します。 明細30行から空欄行とOK行を引きます。初期例は0、案件IDをP99へ変えた明細が1行あれば1です。
=ROWS(工数明細!$G$7:$G$36)-COUNTBLANK(工数明細!$G$7:$G$36)-COUNTIFS(工数明細!$G$7:$G$36,"OK")
A18は「全案件の合計」です。H18へ次の式を入れます。入力不備がなく、登録した案件すべてに記録がある場合に合計を表示します。
「案件集計」のH18へ次の式を入れます。このセルだけに設定します。 未登録の案件IDや、売上の入力漏れがある場合も合計を保留します。
=IF(OR(C4>0,ROWS(H7:H16)-COUNTBLANK(H7:H16)-COUNTIFS(H7:H16,"記録分を集計")>0),"要確認",IF(COUNT(C7:C16)=0,"未登録","記録分を集計"))
「案件集計」のC18へ次の式を入れます。このセルだけに設定します。 売上合計は130,000円です。
=IF(H18<>"記録分を集計","",SUM(C7:C16))
「案件集計」のD18へ次の式を入れます。このセルだけに設定します。 記録時間の合計は14.50時間です。
=IF(H18<>"記録分を集計","",SUM(D7:D16))
「案件集計」のE18へ次の式を入れます。このセルだけに設定します。 原価合計は41,750円です。
=IF(H18<>"記録分を集計","",SUM(E7:E16))
「案件集計」のF18へ次の式を入れます。このセルだけに設定します。 差額合計は88,250円です。
=IF(COUNT(C18,E18)<>2,"",C18-E18)
「案件集計」のG18へ次の式を入れます。このセルだけに設定します。 全体の差額率は67.9%です。案件別の率を単純平均しません。
=IF(COUNT(C18,F18)<>2,"",IF(C18=0,"",F18/C18))
条件付き書式は、工数明細G7:G36の「OK以外の空欄でないセル」と案件集計C4の「0より大きい値」に設定すると、不備が見つけやすくなります。入力規則は明細B列を案件ID一覧、C列を担当コード一覧、D列を0〜24の小数、E列を0以上の小数にしてください。配布教材には設定済みです。
販売テンプレートで同じ原価を確認する手順
無料教材は、単価を確定して行に残す操作を小さな例で試す表です。継続的に予定工数との比較やメンバー別の稼働も見たい場合は、工数・案件管理 Excelテンプレートを使えます。販売版の入力場所は無料教材と異なります。
1. メンバーと案件を登録する
販売ファイルをコピーし「はじめに」を読みます。サンプルを置き換える場合は、「工数記録」のA7:F3006とJ7:J3006、「案件一覧」のA7:J306、「メンバー」のA7:E26の入力内容だけを消します。工数記録G:I列と案件一覧K:T列は数式なので残してください。実際に使うファイルの原本は別に保管します。
「メンバー」のA7へ青木、C7へ現在単価3500、A8へ森、C8へ2500を入力します。B列には役割、D列には月の稼働目標を設定します。「案件一覧」の7行目へP01のID、顧客名、案件名、担当者を登録し、E7へ税抜受注金額90000、F7へ予定工数を入れてください。この描画例では予定16時間です。開始日・納期・状態も案件に合わせます。
2. 工数記録のE列とJ列を入力する
「工数記録」の7〜10行へP01の4明細を入れます。A列は作業日、B列はメンバーの氏名、C列は案件ID、D列は作業区分、E列は時間です。J7:J10には3000、2500、3500、2500を数値で入力します。


メンバーC7の現在単価を変えても、工数記録J7の3,000円とH7の12,000円は変わりません。適用単価を自動で転記・固定する機能ではなく、J列へ数値を入力して使う仕組みです。
3. 原価と「現時点の粗利」を確認する
「案件一覧」のK7が11時間、M7が31,500円、N7が58,500円なら、無料教材と同じ記録を集計できています。O7の粗利率は65%です。これは記録済み労務原価ベースの粗利で、外注費や残作業を含む最終採算ではありません。
端数の扱いは異なります。無料教材は各行を1円単位で四捨五入し、販売v1.2のH列は時間と確定単価の積を丸めずに集計します。小数の時間や単価を使う場合は、表示桁数を増やして端数も確認してください。この記事の例は各行が整数円になるため、どちらも同じ金額です。
J7を空欄にすると、工数記録H7と案件一覧M7・N7・O7に「単価未入力」と表示します。J7が0なら0円として計算します。未登録の案件IDは工数記録G列に「(未登録のID)」と出ますが、その行は既存案件の集計へ入りません。G列の警告を確認してIDを直してから採算を見てください。
販売版では案件別のSUMIFS、予定工数との比較、メンバー別の稼働集計を用意しています。無料教材で追加した全明細の不備件数C4や、同じ入力チェック式が販売版に備わるという意味ではありません。記録漏れや単価の妥当性は、担当者が確認します。
販売ページの対応環境はPC版Excel・Web版Excel・Googleスプレッドシートです。スマートフォン専用のレイアウトではありません。今回の作例検証で確認した環境は次の章に分けて記載しています。
時間を記録する表から作る場合は、工数管理表の予定と実績を集計する手順をご覧ください。受注前の予定時間は工数見積もりの無料作例で積み上げられます。売上と原価から率を計算する考え方は、粗利率の計算と全体の集計式でも説明しています。
作例の確認範囲と参考資料
無料教材は、入力を変えた20ケースで確認しました。単価改定後の過去行、空欄と0、未登録・重複コード、売上0、記録追加を含みます。別途、保存済みの計算値を消したコピーをLibreOfficeDevで再計算し、初期例と入力変更の結果を照合しています。配布ファイルは元の6明細へ戻した状態です。
販売v1.2も原本のコピーへ同じ例を入力し、確定単価と原価・粗利の関係を確認しました。Microsoft Excel実機・Web版Excel・Googleスプレッドシート・実印刷での今回の操作確認は未実施です。本文の表画像はファイルの描画例で、Excelアプリのスクリーンショットではありません。
数式と操作の仕様はMicrosoftのSUMIFS関数、COUNTIFS関数、貼り付けオプションを参照しました。

