財務三表モデルとは、損益計算書(P&L)・貸借対照表(B/S)・キャッシュフロー計算書(CF)の3つを数式で機械的に連動させたスプレッドシートです。売上の前提を1か所変えるだけで、3つのシートすべてに変更が自動反映されます。貸借対照表が合わない、またはCFがP&Lと整合しない場合、そのモデルは「壊れている」と判断されます。投資家や経営陣はかならずそこを見ます。
本記事では、財務三表の連携の仕組み、よくある破綻ポイント、そしてGoogle Sheetsで実用に耐えるモデルを構築するための手順を解説します。
「財務三表」が意味すること
財務三表とは、単にスプレッドシートのタブが3枚あることではありません。同じ経済的事実を3つの切り口で表現した、一体のモデルです。
- 損益計算書(P&L):一定期間の売上から費用を差し引き、当期純利益を算出する
- 貸借対照表(B/S):ある時点における「資産 = 負債 + 純資産」の関係を示す
- キャッシュフロー計算書(CF):当期純利益と実際の現金の動きを突き合わせて説明する
機械的な連携の核心は次の通りです。P&Lの当期純利益はB/Sの利益剰余金に流れ込み、同時にCFの営業活動の部の起点になります。減価償却費はP&Lでは費用として利益を押し下げますが、実際には現金が出ていかない(非現金)費用なので、CFでは加算して戻します。売掛金・棚卸資産・買掛金などの運転資本の増減は、P&LとCFの差を埋める調整項目として機能します。
CFA協会の「CFA Program Curriculum 2024 Level I, Volume 3: Financial Statement Analysis」でも「キャッシュフロー計算書は損益計算書と貸借対照表を補完する情報を提供する」と明記されています。具体的には、「なぜ黒字なのに資金が底をつくのか」という疑問に答えるのがCFの役割です。たとえば当期純利益が2億円あっても、売掛金の増加が3億円あれば、会社は現金を生み出すのではなく消費しています。
また、国際会計基準(IAS第7号「キャッシュ・フロー計算書」、IASB 2023年改訂版)は、営業活動・投資活動・財務活動の3区分を定めており、日本のキャッシュ・フロー計算書に関する会計基準(企業会計基準第7号)も同じ区分構造を採用しています。財務三表モデルのCFシートを設計する際は、この3区分に沿って組み立てることが国際的な実務の標準です。
財務三表モデルが壊れる3つのポイント
財務三表モデルの多くは、同じ箇所で破綻します。
1. 負債と現金の循環参照
損益計算書の支払利息は、B/Sの借入残高に依存します。一方、借入残高はCFに依存し、CFは純利益に依存し、純利益には支払利息が含まれます。この循環構造により、Google Sheetsでは循環参照エラーが発生します。解消するには反復計算を有効にしてください(ファイル → 設定 → 計算 → 反復計算を有効にする)。
2. 減価償却費の二重管理
B/Sの有形固定資産(PP&E)は毎期、減価償却費の分だけ減少します。同じ金額がP&Lでも費用計上され、CFでは加算戻しされます。どこか1か所に数値を直打ちし、他の箇所は数式参照にしていると、前提を変更した瞬間に整合性が崩れます。
3. 利益剰余金の繰り越し計算
利益剰余金(期末)= 利益剰余金(期首)+ 当期純利益 − 配当金
この計算はB/Sで行いますが、「期首残高を前期末残高に数式で参照する」という処理を忘れているモデルが非常に多い。1年目は一見バランスして見えても、2年目以降に必ず崩れます。
資産 ≠ 負債 + 純資産 となっているモデルは、財務三表モデルではありません。「タブが3枚あるだけのモデル」であり、それは全くの別物です。
Google Sheetsでの構成
実務で使える財務三表モデルの最小構成は5枚のシートです。為替前提・感応度分析・借入スケジュールが加わる実案件では8〜10枚になりますが、以下の5枚が骨格になります。
| シート | 役割 |
|---|---|
| Assumptions(前提) | 成長率・利益率・設備投資比率・税率などすべての入力値を集約 |
| Income Statement | 売上 → EBITDA → EBIT → 税引前利益 → 当期純利益 |
| Balance Sheet | 資産・負債・純資産、前期残高からのロール |
| Cash Flow | 営業・投資・財務の3区分 |
| Checks(整合性確認) | B/Sチェック、CF突合、ハードコードセルの監査 |
「Checksシート」の有無が、信頼されるモデルと作り直しを余儀なくされるモデルの差を生みます。
損益計算書の作り方
まず売上から組み立てます。SaaS企業をモデリングする場合の例:
B5: =Assumptions!B3 // 1年目のARR
C5: =B5*(1+Assumptions!B4) // 2年目:前年 × (1 + 成長率)
利益率は必ずAssumptionsシートで管理してください。=B5*0.72 と直接書いてはいけません。0.72 はAssumptionsシートに置いて参照します。3か月後の自分が必ず感謝するはずです。
減価償却費はB/Sの減価償却スケジュールから参照し、別の前提値として独立させないことが重要です:
B18: ='Balance Sheet'!B_DepreciationSchedule
貸借対照表の作り方
最も難しいのは純資産の部です。ここで多くのモデルが破綻します:
// 利益剰余金
B_RetainedEarnings: =C_RetainedEarnings_PriorYear + 'Income Statement'!B_NetIncome - B_Dividends
B/Sの現金は、CFの出力結果を参照するかたちにしてください。入力値にしてはいけません:
B_Cash: ='Cash Flow'!B_EndingCash
このたった1行の数式が、モデルの核心的なリンクです。これを切り離すと、B/Sは「誤った現金残高でバランスしている」という最悪の状態になります。
キャッシュフロー計算書の作り方
当期純利益を起点に、非現金項目を加算し、運転資本の増減を調整します:
// 営業キャッシュフロー
B_CFO:
+ 'Income Statement'!B_NetIncome // 当期純利益
+ 'Income Statement'!B_Depreciation // 減価償却費(非現金)の加算戻し
- ('Balance Sheet'!B_AR - 'Balance Sheet'!PY_AR) // 売掛金増減
- ('Balance Sheet'!B_Inv - 'Balance Sheet'!PY_Inv) // 棚卸資産増減
+ ('Balance Sheet'!B_AP - 'Balance Sheet'!PY_AP) // 買掛金増減
運転資本の増減は符号の扱いでミスが起きやすい点です。売掛金の増加は現金の流出です(売上は立っているが未回収)。買掛金の増加は現金の流入です(費用は発生しているが未払い)。逆に設定すると、運転資本の増減額の2倍分だけモデルがずれます。なぜ2倍かというと、プラスにすべきところをマイナスにすれば、正しい値との差は符号分で2倍になるからです。新卒のモデルで最も頻繁に目にする破綻パターンの一つです。
Checksシートの設計
専用のChecksシートに、最低でも以下の3つの数式を設置してください。
// B/Sチェック(0になるべき)
='Balance Sheet'!TotalAssets - 'Balance Sheet'!TotalLiabilitiesAndEquity
// CF突合(0になるべき)
='Balance Sheet'!EndingCash - 'Cash Flow'!EndingCash
3つ目の「ハードコードセルの検知」は、Google SheetsのIFORMULA関数を組み合わせて実装します。COUNTFORMULA という関数は存在しないため、以下のように ISFORMULA と SUMPRODUCT を使います:
// Income Statementシートの非数式・非ゼロセルをカウント(0になるべき)
=SUMPRODUCT(
--(NOT(ISFORMULA('Income Statement'!B5:Z100))),
--('Income Statement'!B5:Z100 <> 0)
)
この数式は「数式ではなく、かつ値が0でないセル」の個数を返します。Assumptions以外のシートでこれが0より大きければ、誰かが直打ちをしています。Balance SheetとCash Flowシートにも同じ数式を設置し、Checksシートで一覧できるようにしてください。
これらのセルには条件付き書式を設定し、値が0のときは緑、それ以外は赤で表示してください。B/Sチェックを非表示にした状態で壊れたモデルを社内共有すると、必ず誰かが見つけます。いつも見つかります。
複雑化するポイント:借入スケジュール
LBOモデルや、有利子負債が相応にある企業では、別途「借入スケジュール」シートが必要です。このシートが管理する項目は:
- 期首借入残高
- 新規借入
- 返済額(多くの場合、余剰現金のスイープ式で自動計算)
- 期末残高 → B/Sに連携
- 支払利息 → P&Lに連携
リボルビング・クレジット・ファシリティ(コミットメントライン)は特に複雑です。キャッシュ不足の穴埋めとしてサイジングされることが多いため、CFに依存し、CFはP&Lに依存し、P&Lはリボルバーの支払利息を含む、という循環参照が生じます。これが最も頻繁に発生する循環参照の形態です。
2026年4月時点では、Google Sheetsは反復計算機能で循環参照を処理します(デフォルトは50回の反復)。借入モデルの大半はこれで問題なく収束します。収束のしきい値は0.001以下に設定することを推奨します。
AIが実際に役立つ場面
財務三表モデルの骨格を作る作業は、やるべきことは明確でも、シート構成と数式の整備だけで2〜3時間かかる「機械的な作業」です。
ModelMonkeyは、説明文からモデルの初期構造を自動で生成できます。たとえば「ARR・解約率・コミットメントラインを含むSaaS企業の5か年財務三表モデルを作成してほしい」と伝えるだけで、タブをまたぐ数式参照やChecksシートを含む骨格が出力されます。ビジネス前提の妥当性を判断するのはあくまでも人間の仕事ですが、白紙のスプレッドシートからバランスしたモデルまでを10分以内で到達できる点が、実質的な価値です。
出力されたモデルには、あなた自身の前提入力が必要です。ただし、配管の接続はすでに済んでいます。
よくあるエラーと原因
| エラー | 原因 |
|---|---|
| B/Sが純利益の金額だけずれている | 利益剰余金のロールが未設定、または二重計上 |
| CFは合うがB/Sが合わない | B/Sの現金をCFから参照せず直打ちしている |
| 2年目以降でモデルが崩れる | 期首残高を数式参照せず固定値で入力している |
| タブをまたいで #REF! エラー | 数式作成後にシート名を変更した |
| B/Sがバランスしているが内容がおかしい | 差額調整セル(プラグ)でエラーを隠蔽している |
最も危険なのはプラグセル(差額調整セル)です。資産と「負債+純資産」を無理やり一致させるための数値を1行追加してエラーを隠す手法ですが、レビュアーは必ず気づきます。理由のない調整行が1行あるだけで、何が起きているか一目でわかります。
よくある質問(FAQ)
Q. 財務三表モデルと、普通の財務表をExcel/Sheetsで作るのは何が違いますか?
A. 普通の財務表は「記録」であり、財務三表モデルは「連動した予測機械」です。前提(成長率・利益率・設備投資比率)を変更したとき、3つのステートメントすべてに即座に影響が伝播するのが財務三表モデルの定義です。どこか一つでも手動で数値を入力している箇所があれば、それは財務三表モデルではなく、表が3枚あるだけのスプレッドシートです。
Q. 貸借対照表がバランスしないとき、最初に確認すべき場所はどこですか?
A. 次の順番で確認してください。①B/Sの現金がCFの期末現金残高を数式参照しているか(直打ちになっていないか)。②利益剰余金のロールが「期末 = 期首 + 当期純利益 − 配当」になっているか(期首を前期末から参照しているか)。③減価償却費がP&L・B/S・CFの3か所で同じ数値を参照しているか。この3点のうち少なくとも1か所に原因があることがほとんどです。
Q. Google Sheetsで循環参照エラーが出たときの対処法は?
A. ファイル → 設定 → 計算 → 「反復計算を有効にする」をオンにしてください。反復回数はデフォルトの50回、収束のしきい値は0.001以下で通常の借入モデルには十分です。循環参照が発生する典型的な原因は、P&Lの支払利息 → B/Sの借入残高 → CFの返済額 → P&Lの支払利息 という連鎖です。反復計算を有効にしても値が収束しない場合は、循環参照の経路自体を見直してください。
Q. 財務三表モデルを初めてゼロから作ると何時間かかりますか?
A. シート構成の設計から、Checksシートのすべてが緑になるまでの状態に至るには、経験のある担当者でも2〜3時間が標準です。初めて取り組む場合は半日以上かかることも珍しくありません。ModelMonkeyのような生成ツールを使えば骨格の生成は10分以内に終わりますが、自社のビジネス前提を入力し、検証する時間は別途必要です。
Q. 年度始まりが4月の日本企業の場合、モデル設計で注意することはありますか?
A. 期首・期末の定義を必ずAssumptionsシートに明示してください(例:FY2026 = 2026年4月〜2027年3月)。特に、前期末残高の参照が「3月31日時点」になっているか、列のラベルが会計年度基準になっているかを確認してください。カレンダー年と会計年度が混在したモデルは、2年目以降のロール計算で必ずずれます。
財務三表モデルの構築まとめ
財務三表モデルとは、同じ経済的事実を3つの視点から表現し、数式で機械的に連結したモデルです。P&Lは利益剰余金を動かしてCFの起点になります。CFはB/Sに現金残高を出力します。多くのモデルが壊れる箇所は、減価償却費の管理、運転資本の増減の符号、そして借入スケジュールの連携です。
Checksシートの設計は、ISFORMULA を使ったハードコード検知まで含めて実装してください。すべてのセルが緑の0を示しているモデルが、信頼されるモデルと最初から作り直されるモデルの分岐点です。