スプレッドシートとAIで始める原価管理|工数・外注費の集計と予算超過の検知
原価管理を始めるとき、最初から大きなシステムを導入するより、手元のスプレッドシートで工数と費用の関係を確認したい場合があります。ただし、一枚の表に顧客名、給与単価、工数、請求、予算を詰め込むと、重複や上書きが起き、AIを加えても誤った数字を速く集計するだけになりかねません。
スプレッドシートで原価管理を始めるなら、案件・単価・工数・費用・予算の台帳を分け、案件IDで結合します。金額は承認済みデータと数式で計算し、AIには分類候補や超過理由の整理を任せます。集計の正本、権限、締め、例外処理を先に決めることが、無理なく継続するための条件です。

本記事のポイント
- 案件・単価・工数・費用・予算を別台帳にし、案件IDと単価の適用期間でつなぐ。
- 数式と承認済みデータを金額の正本にし、AIは分類候補・理由の提示に限定する。
- 給与情報の閲覧権限と締め後の修正を管理し、原本照合と例外確認を月次で行う。
五つの台帳を分け、IDと適用期間を持つ
案件台帳には案件ID、顧客ID、案件名、責任者、契約期間、税抜売上、状態を持たせます。案件名は表示用であり、集計キーにしません。追加契約を別案件にするか変更番号で管理するかを決め、元契約との関係を残します。最初の設計は案件別原価管理で扱う費用範囲とそろえます。
| 台帳 | 主な列 | 入力・管理の注意 |
|---|---|---|
| 案件 | 案件ID、顧客ID、責任者、契約金額、状態 | IDを一意にし、名称変更と分離する |
| 単価 | 単価ID、役割・スタッフID、適用期間、時間単価 | 給与関連の閲覧権限を制限する |
| 工数 | 記録ID、作業日、案件ID、スタッフID、時間、承認 | 予定ではなく実績を記録し、単価版を固定する |
| 費用 | 明細ID、案件ID、費目、金額、計上月、発注残 | 発注と請求を重複費用にしない |
| 予算 | 案件ID、版数、承認日、予算原価、残作業見込み | 当初予算と変更予算を上書きしない |
工数入力と単価情報は別ファイルにする選択肢もあります。同じスプレッドシートの非表示タブや保護範囲は、閲覧権限を分ける代わりにはなりません。給与単価を見せられない相手へファイルを共有しないよう、共有範囲を先に設計します。現場には自分の記録と案件名、管理者には原価集計というように必要な情報を分けます。
日付は文字列と混在させず日付値として統一し、時間の単位は十進時間など一つにそろえます。1時間30分を1.5時間とする方式と、時刻の1:30を同じ列に混ぜると計算が崩れます。金額は税抜・税込を統一し、通貨が異なる場合は原通貨、換算レート、適用日、円換算額を分けます。空欄を自動的にゼロにせず、未確認状態を残してください。
単価を確定し、承認済み工数だけを集計する
工数シートの列を、A:記録ID、B:作業日、C:案件ID、D:スタッフID、E:実績時間、F:適用単価、G:労務費、H:承認状態とします。以下の式は、この列配置を前提にした例です。F列は作業日に有効な承認済み単価を照合して入力し、G2には =E2*F2 を設定します。単価が欠けた行をゼロ円として集計せず、未確認として締め前に解消します。
集計シートのA2に案件IDを置いた場合、全期間の承認済み労務費は次の式で合計できます。範囲は同じ行数にそろえ、実際の行数が上限を超えないよう確認します。関数の条件範囲の扱いはGoogle公式のSUMIFSヘルプで確認できます。
=SUMIFS(
工数!G2:G10000,
工数!C2:C10000,A2,
工数!H2:H10000,"承認済み"
)
月次では作業日または社内で定めた対象月の条件を追加します。集計シートのB1に対象月の初日を日付値で置くなら、作業日がB1以上、翌月初日未満になる条件を加えます。次の式は、月末の時刻を含む記録にも対応しやすい半開区間を使っています。
=SUMIFS(
工数!G2:G10000,
工数!C2:C10000,A2,
工数!H2:H10000,"承認済み",
工数!B2:B10000,">="&$B$1,
工数!B2:B10000,"<"&EDATE($B$1,1)
)
数式が正しくても、対象案件IDの誤りや単価期間の重複は検出できません。案件IDがマスターに存在すること、作業日に有効な単価がちょうど一件あること、記録IDが重複しないことを別に確認します。時間単価の計算方法に沿って、共通費を含むかどうかも台帳に明記します。
予算超過は実績だけでなく完成時見込みで見る
案件集計には実績労務費、実績外注費、実績直接経費、未計上発注残、その他の残作業見込みを分けて置きます。完成時原価見込みは、実績原価に未計上発注残とその他の残作業見込みを加えた金額です。詳細は原価の予実管理と着地予測で説明しています。
税抜の架空例で、予算80万円、実績50万円、発注残15万円、その他の残作業25万円なら、完成時見込みは90万円で、予算超過は10万円です。予算超過額を「完成時見込み−承認予算」で計算し、正の値なら確認対象にします。超過率は予算がゼロや未登録のときに計算せず、予算未確認として表示します。
通知条件は、金額と比率、更新からの経過日数などを組み合わせます。小さい案件では少額でも率が高くなるため、率だけの通知では確認件数が増えます。逆に大型案件では低い超過率でも金額が大きくなります。社内で重要性の基準を決め、案件責任者が確認・対応済みにできる欄を用意します。
同じ超過を毎日通知するだけでは、通知を見なくなります。初回検知、見込みの悪化、対応期限超過など、状態が変わったときに知らせる設計にします。費用が計上されて発注残から実績へ移っただけなら、合計見込みは原則変わりません。この状態移行で通知が出る場合は、重複か控除漏れを疑います。
AIは分類候補と説明を担当し、金額は確定させない
AIが役立つのは、作業メモから作業区分の候補を出す、超過案件の理由を承認済み記録から要約する、請求明細の案件候補を提示する、といった補助です。自由記述が多い部分を整理できますが、同名案件や曖昧なメモを正しく判断できるとは限りません。候補、参照した記録ID、確認者、承認状態を残します。
例えばAIへの依頼は「この作業メモを、設計・実行・確認・修正・共通業務のいずれかの候補に分類し、根拠となる語句と判断不能な点を返す」と限定します。返答をそのまま原価台帳へ上書きせず、人が承認した区分だけを反映します。分類不能を認め、推測で案件IDや金額を補わせないことが重要です。
給与、顧客機密、契約条件を外部AIへ送る前に、契約、データ利用条件、保存、アクセス制御を確認します。必要のない氏名や顧客名は匿名IDへ置き換え、参照範囲を絞ります。モデルの返答を経由して他のファイルを読み取ったり、費用承認や支払操作を実行したりしないよう、AIの処理と確定操作を分けます。
導入効果は分類の正答率だけでなく、修正時間、判断不能率、確認漏れ、処理待ちで測ります。人の確認に以前より時間がかかるなら、区分が曖昧か、対象作業が適していない可能性があります。計算をAIに任せる前に、数式とマスターが正しく、例外が見える状態を作る方が、原価の信頼性に直結します。
締め・権限・移行条件を決めて運用する
週次には工数未提出と未分類費用、月次には単価未確定、取消明細、発注残、会計照合を確認します。締めた月の入力を保護し、修正は理由と承認を残します。保護範囲は誤操作を防ぐ機能として使い、機密の閲覧制限はファイルの共有権限で行ってください。管理者アカウントを全員で共用しないことも必要です。
数式列を上書きしていないか、参照範囲から行が落ちていないか、別ファイルの取込みが更新されているかを定期確認します。集計合計と給与・会計の対象原本との差を残し、未配賦残を含めて説明します。配賦を導入する場合は間接費・共通費の配賦方法に沿って、直接費との重複を防ぎます。
複数部門で同時更新が増える、履歴や権限が不足する、締めの手修正が常態化する、処理件数が増えて応答が遅くなる場合は、データベースや専用サービスへの移行を検討します。行数だけで決めず、運用上のリスクと維持工数を判断基準にします。IDと台帳を分けていれば、移行時にもデータを引き継ぎやすくなります。
入力画面を整える段階では、AppSheetを使った見積管理のように、台帳の正本と現場の操作画面を分離する方法もあります。利用条件や権限を確認し、システム化の前後で合計が一致するかを検証してください。目指すのは派手な自動化ではなく、赤字の予兆を見つけて具体的な対応を決められる運用です。
よくある質問
スプレッドシートだけで原価管理を始められますか?
少数案件から始めることはできます。案件、単価、工数、費用、予算を分け、共通のIDと対象期間で集計します。数式だけでなく入力責任者、承認、締め、修正履歴を決めてください。行数の増加よりも、権限不足や手修正の常態化、監査履歴の不足が移行を検討する重要な兆候です。
工数から案件別の労務費を集計するには?
実績時間に適用単価を掛けて行ごとの労務費を求め、案件ID・承認状態・期間を条件にSUMIFSで集計します。本文の式は列配置が前提なので、自分の台帳へ適用するときは参照列と範囲を確認してください。未登録単価、案件ID不一致、記録重複は合計式だけでは防げないため、別の確認欄で検出します。
AIへ任せてよい処理は何ですか?
作業メモの分類候補、超過理由の要約、費用明細の案件候補など、根拠を確認できる補助が適しています。金額や案件IDを推測で確定させず、人が承認してから反映します。給与や顧客機密を送る前には、契約、データ利用条件、保存、アクセス制御を確認します。AIの返答と支払・承認操作は分離してください。
単価シートを非表示にすれば給与情報を守れますか?
非表示や保護範囲は、機密情報の閲覧権限を分ける代わりにはなりません。単価を見せられない相手へ同じファイルを共有しないよう、ファイル単位の権限を設計します。現場の工数入力と管理者向け原価集計を分ける方法もあります。管理者アカウントの共用を避け、必要な人に必要な範囲だけアクセスを認めてください。