3-statement-model について
三表連動型の財務モデルテンプレートを完成させるスキルです。財務予測を作成・確認する人向けに、損益計算書、貸借対照表、キャッシュフロー計算書を数式で連携し、段階ごとに確認を求めます。
主な機能
- 01シート構成とセルの役割を確認
- 02数式で予測と財務諸表を連携
- 03節目ごとにユーザーの確認を取得
- 04貸借一致と現金の整合性を確認
- 05シナリオ分析と信用指標に対応
活用シーン
- 01三表財務モデルのテンプレートを完成
- 02過去データから予測を作成
- 03シナリオ別にモデルの連携を確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ anthropics/ financial-services --skill 3-statement-modelインストール後、Claude Code で/3-statement-modelを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/formatting.mdformulas.mdsec-filings.md詳細
3ステートメント財務モデルテンプレートの完成
損益計算書、貸借対照表、キャッシュフロー計算書の間に適切な連動関係を設定し、統合財務モデルテンプレートを完成させて入力します。
⚠️ 重要な原則 — テンプレートに入力する前にお読みください
環境 — Office JS と Python:
- Excel 内で実行する場合(Office アドイン/Office JS): Office JS を直接使用します。
range.formulas = [["=D14*(1+Assumptions!$B$5)"]]のように数式を入力してください。導出セルにrange.valuesを使ってはいけません。別途再計算する必要はありません。Excel がネイティブに計算します。タブ間の移動にはcontext.workbook.worksheets.getItem(...)を使用します。 - スタンドアロンの .xlsx ファイルを生成する場合: Python/openpyxl を使用します。
ws["D15"] = "=D14*(1+Assumptions!$B$5)"と入力し、納品前にrecalc.pyを実行します。 - Office JS の結合セルに関する注意点:
.merge()を呼び出した後、結合した範囲に.valuesを設定してはいけません。範囲が結合前のサイズを報告するため、InvalidArgumentエラーが発生します。代わりに、左上のセルだけに値を書き込んでから、範囲全体を結合して書式を設定します。ws.getRange("A1").values = [["INCOME STATEMENT"]]; const h = ws.getRange("A1:G1"); h.merge(); h.format.fill.color = "#1F4E79"; - 以下の原則は、どちらの環境でも同様に適用されます。
ハードコードではなく数式を使用(必須):
- すべての予測セル、ロールフォワード、連動項目、小計には、必ず Excel 数式を使用します。事前に計算した値を入力してはいけません。
- Python/openpyxl を使用する場合は、計算結果(
ws["D15"] = 12500)ではなく、数式文字列(ws["D15"] = "=D14*(1+Assumptions!$B$5)")を入力します。 - 数値をハードコードしてよいのは、(1)過去実績、(2)Assumptions タブの前提条件ドライバーのセルのみです。
- Python で値を計算し、その結果をセルに書き込みそうになったら、そこで止めてください。代わりに数式を入力します。
- 理由:シナリオの切り替えや前提条件の変更に応じて、モデルが柔軟に対応できる必要があります。ハードコードは後続の整合性チェックをすべて気づかないうちに破綻させます。
ユーザーと段階ごとに確認します:
- テンプレートの構成を把握した後 → 特定したタブ/セクションをユーザーに示し、セルに入力する前に確認します
- 過去実績の入力後 → 過去実績のブロックをユーザーに示し、値/期間がソースデータと一致することを確認します
- 損益計算書の予測を作成した後 → 小計チェックを実行し、予測損益計算書をユーザーに示して、貸借対照表に進む前に確認します
- 貸借対照表の作成後 → すべての期間について貸借対照表のバランスチェック(資産 = L+E)をユーザーに示し、キャッシュフロー計算書に進む前に確認します
- キャッシュフロー計算書の作成後 → 現金の照合(キャッシュフロー計算書の期末現金 = 貸借対照表の現金)をユーザーに示し、最終確定の前に確認します
- モデル全体に一度に入力して完成版として提示してはいけません — 各財務諸表の作成時に作業を区切って提示し、早い段階で誤りを見つけます
書式 — プロフェッショナルなブルー/グレーの配色(テンプレート/ユーザーの指定がない場合の既定値)
色は最小限にします。 セルの塗りつぶしには、ブルーとグレーのみを使用します。グリーン、イエロー、オレンジ、複数のアクセントカラーを追加してはいけません。すっきりしたモデルには、色を控えめに使います。
| 要素 | 塗りつぶし | フォント |
|---|---|---|
| セクション見出し(損益計算書/貸借対照表/キャッシュフロー計算書のタイトル) | ダークブルー #1F4E79 | 白、太字 |
| 列見出し(FY2024A、FY2025E など) | ライトブルー #D9E1F2 | 黒、太字 |
| 入力セル(過去実績、前提条件ドライバー) | ライトグレー #F2F2F2 または白 | ブルー #0000FF |
| 数式セル | 白 | 黒 |
| タブ間リンク | 白 | グリーン #008000 |
| チェック行/主要合計 | ミディアムブルー #BDD7EE | 黒、太字 |
使用する色は、ブルー 3 色、グレー 1 色、白です。 テンプレートに独自の配色がある場合は、そちらに従います。
フォントの色は、セルの種類(入力/数式/リンク)を示します。塗りつぶしの色は、セルの位置(見出し/データ/チェック)を示します。
モデル構成
テンプレートのタブ構成を確認する
テンプレートによって、タブの名前や構成は異なります。データを入力する前に、すべてのタブを確認し、テンプレートの構造を把握してください。一般的なタブ名と、各タブに含まれる内容は以下のとおりです。
| 一般的なタブ名 | 確認する内容 |
|---|---|
| IS、P&L、Income Statement | 損益計算書 |
| BS、Balance Sheet | 貸借対照表 |
| CF、CFS、Cash Flow | キャッシュフロー計算書 |
| WC、Working Capital | 運転資本スケジュール |
| DA、D&A、Depreciation、PP&E | 減価償却スケジュール |
| Debt、Debt Schedule | 負債スケジュール |
| NOL、Tax、DTA | 繰越欠損金スケジュール |
| Assumptions、Inputs、Drivers | ドライバーの前提条件と入力値 |
| Checks、Audit、Validation | エラーチェック用ダッシュボード |
テンプレート確認チェックリスト
- テンプレートにあるタブを特定します(すべてのスケジュールが含まれているとは限りません)
- 上記にない、テンプレート固有のタブがあれば記録します
- タブ間の依存関係を把握します(例:どのスケジュールが主要な財務諸表に反映されるか)
- 各タブの入力セルと数式セルを特定します
テンプレートの構造を理解する
テンプレートにデータを入力する前に、データを正しい場所に入力し、数式を維持できるよう、既存のレイアウトを把握してください。
行の構造を確認する
- 各タブの上部にあるモデルのタイトルを確認します
- セクション見出しと、その視覚的な区切りを特定します
- $ millions、%、x などの単位を示す行を確認します
- 実績期間と予測期間を区別する列見出しを確認します
- 期間ラベル(例:FY2024A、FY2025E)を確認します
- 入力セルと数式セルを特定します(通常はフォントの色で区別されています)
列の構造を確認する
- 左端の列にある項目ラベルを確認します
- 過去の年度が予測年度より前にあることを確認します
- 過去期間と予測期間を区切る視覚的な罫線を確認します
- すべてのタブで列の順序が統一されているか確認します
名前付き範囲を扱う テンプレートでは、重要な入力値や出力値に名前付き範囲が使われていることがあります。データを入力する前に、次の点を確認してください。
- テンプレートに既存の名前付き範囲があるか確認します(Excel の「数式」→「名前の管理」)
- 一般的な名前付き範囲には、売上成長率、コスト比率、主要な出力値(純利益、EBITDA、有利子負債合計、現金)、シナリオ選択セルなどがあります
- これらの名前付き範囲に反映されるセルに入力されていることを確認します
予測期間
- 通常、テンプレートでは最後の過去実績年度から先の5年間を予測します
- 過去実績(A)列と予測(E)列が明確に区別されていることを確認します
- 列が会計年度表記(例:FY2024A、FY2025E)を使用していることを確認します
利益率分析
注:以下の利益率分析は、ユーザーから指示があった場合、またはテンプレートで明示的に必要とされている場合にのみ実施してください。指示がない場合は、このセクションを省略してください。
損益計算書(IS)タブで利益率を計算して表示し、業務効率を追跡するとともに、同業他社との比較に役立てます。
含める主要な利益率
| 利益率 | 計算式 | 測定対象 |
|---|---|---|
| 売上総利益率 | 売上総利益 / 売上高 | 価格決定力、生産効率 |
| EBITDA マージン | EBITDA / 売上高 | 中核事業の収益性 |
| EBIT マージン | EBIT / 売上高 | 減価償却後の営業収益性 |
| 純利益率 | 純利益 / 売上高 | 最終利益の収益性 |
利益率を含む損益計算書のレイアウト
各利益項目のすぐ下に利益率を表示します。
- 売上総利益の下に売上総利益率を表示
- EBIT の下に EBIT マージンを表示
- EBITDA の下に EBITDA マージンを表示
- 純利益の下に純利益率を表示
信用指標
注:以下の信用分析は、ユーザーから指示があった場合、またはテンプレートで明示的に必要とされている場合にのみ実施してください。指示がない場合は、このセクションを省略してください。
貸借対照表(BS)タブで信用力・レバレッジ指標を計算して表示し、財務健全性、負債調達余力、財務制限条項の遵守状況を評価します。
主要な信用指標
| 指標 | 計算式 | 測定内容 |
|---|---|---|
| 総負債 / EBITDA | 総負債 / LTM EBITDA | レバレッジ倍率 |
| 純負債 / EBITDA | (総負債 - 現金) / LTM EBITDA | 現金を差し引いたレバレッジ |
| インタレスト・カバレッジ | EBITDA / 支払利息 | 債務返済能力 |
| 負債 / 総資本 | 総負債 / (総負債 + 株主資本) | 資本構成 |
| 負債 / 株主資本 | 総負債 / 株主資本合計 | 財務レバレッジ |
| 流動比率 | 流動資産 / 流動負債 | 短期流動性 |
| 当座比率 | (流動資産 - 棚卸資産) / 流動負債 | 即時流動性 |
信用指標の階層チェック
Upside が最も強い信用プロファイルを示していることを検証します。
- レバレッジ:Upside < Base < Downside(低いほど良好)
- カバレッジ:Upside > Base > Downside(高いほど良好)
- 流動性:Upside > Base > Downside(高いほど良好)
財務制限条項の遵守状況の追跡
負債の財務制限条項が判明している場合は、実績指標と財務制限条項の基準値を比較する明示的な遵守チェックを追加します。
シナリオ分析(Base / Upside / Downside)
Assumptions タブでシナリオ切り替え(ドロップダウン)を使い、CHOOSE または INDEX/MATCH の数式を使用します。
| シナリオ | 説明 |
|---|---|
| Base Case | 経営陣のガイダンスまたはコンセンサス予想 |
| Upside Case | ガイダンスを上回る成長、利益率の拡大 |
| Downside Case | トレンドを下回る成長、利益率の圧縮 |
感度分析の主なドライバー:売上高成長率、粗利益率、SG&A %、DSO/DIO/DPO、設備投資率、金利、税率。
シナリオ監査チェック:切り替えによってすべての財務諸表が変更されること、すべてのシナリオで BS の貸借が一致すること、現金が一致すること、階層が維持されること(NI、EBITDA、FCF、利益率について Upside > Base > Downside)。
SEC 提出書類からのデータ抽出
テンプレートで SEC 提出書類(10-K、10-Q)からのデータ取得が明示的に必要な場合は、抽出方法の詳細について references/sec-filings.md を参照してください。このリファレンスが必要になるのは、規制当局への提出書類から公開企業のデータを使用してテンプレートに入力する場合のみです。
モデルテンプレートの完成
このセクションでは、既存の数式を維持し、データの整合性を確保しながら、任意の 3 ステートメント財務モデルテンプレートを完成させるための一般的なガイダンスを示します。
ステップ 1:テンプレートの構造を分析する
データを入力する前に、テンプレートを十分に確認し、その構成を把握してください。
入力セルと数式セルを特定する
- 入力セルと数式セルを区別する視覚的な手がかり(フォントの色、セルの網掛けなど)を確認します
- 一般的な慣例:青のフォント = 入力、黒のフォント = 数式、緑のフォント = 他のシートへのリンク
- Excel のトレース機能(数式 → 参照元のトレース)を使用して、セル間の関係を把握します
- 主要な入力値を制御する名前付き範囲があるか確認します(数式 → 名前の管理)
テンプレートの流れを把握する
- どのタブが他のタブにデータを渡すかを特定します(例:Assumptions → IS → BS → CF)
- 補助スケジュールと主要財務諸表とのリンクを確認します
- データを入力する前に、テンプレート固有の項目と構成を記録します
ステップ 2:数式を壊さずにデータを入力する
データ入力の基本ルール
| ルール | 説明 |
|---|---|
| 入力セルのみを編集する | 数式を意図的に置き換える場合を除き、数式が含まれるセルを上書きしないでください |
| セル参照を保持する | データをコピーする際は、「値の貼り付け」(Ctrl+Shift+V)を使用して、コピー元の書式で数式を上書きしないようにしてください |
| テンプレートの単位に合わせる | データを入力する前に、テンプレートが千、百万、実数のどの単位を使っているか確認してください |
| 符号の規則に従う | テンプレートで使われている既存の符号規則(例:費用を正または負のどちらで表すか)に従ってください |
| 循環参照を確認する | テンプレートで反復計算を使っている場合は、「反復計算を有効にする」がオンになっていることを確認してください |
安全なデータ入力手順
- 入力用に指定された正確なセルを特定します(通常はハイライト表示またはラベル付きです)
- まず過去データを入力し、該当期間の数式が正しく計算されていることを確認します
- 予測計算に反映される前提条件のドライバーを入力します
- 計算結果を確認し、数式が意図どおりに機能していることを確認します
- 数式セルを変更する必要がある場合は、変更前に元の数式を記録します
事前に設定された数式の扱い
- まだ入力していないセルを数式が参照している場合は、すべての入力が完了するまで一時的にエラー(#REF!、#DIV/0!)が表示されることがあります
- 数式が予期しない結果を返す場合は、参照元を追跡して、入力の不足や誤りを特定します
- すべてのタブにわたる数式の依存関係を確認せずに、行や列を削除しないでください
ステップ 3:数式を検証する
数式の整合性チェック
テンプレートの出力を利用する前に、数式が正しく機能していることを検証します。
| チェックの種類 | 方法 |
|---|---|
| 参照元のトレース | 数式セルを選択し、数式 → 参照元のトレースを選んで、正しい入力を参照していることを確認します |
| 参照先のトレース | 重要な入力が想定される出力セルに反映されることを確認します |
| 数式の検証 | 数式 → 数式の検証を使って、複雑な計算を順に確認します |
| 直接入力された値の確認 | 予測数式が、直接入力された値ではなく前提条件を参照していることを確認します |
| 既知の値でテスト | 簡単なテスト値を入力し、数式が想定どおりの結果を返すことを確認します |
| タブ間の整合性 | すべての予測期間で同じ数式ロジックが適用されていることを確認します |
注意すべき一般的な数式の問題
- 絶対参照と相対参照が混在し、期間をまたいでコピーしたときに誤った結果になる
- 外部ファイルまたは削除された範囲へのリンク切れ(#REF! エラー)
- 売上が伸びる前の初期期間におけるゼロ除算(#DIV/0! エラー)
- 循環参照の警告(利息計算では意図的な場合があります)
- 予測列間で数式に一貫性がない(Ctrl+\ を使って違いを見つけます)
タブ間のリンクの検証
- 複数のタブに表示される値が、重複入力ではなくリンクされていることを確認します
- スケジュールの合計が、主要財務諸表の対応する項目と一致することを確認します
- 期間ラベルがすべてのタブで一致していることを確認します
ステップ 4:シートごとの品質チェック
テンプレートへの入力後、各シートで以下の検証チェックを実施します。
損益計算書(IS)の品質チェック
- 過去期間の売上高が元データと一致している
- すべての費用項目の合計が報告された合計額と一致している
- 小計(売上総利益、EBIT、EBT、純利益)が正しく計算されている
- 税金の計算ロジックが適切である(損失を正しく処理している)
- 予測のドライバーが前提条件タブを参照している(ハードコードされていない)
- 期間ごとの変動が妥当な方向である
貸借対照表(BS)の品質チェック
- すべての期間で資産 = 負債 + 資本が成り立っている(最優先のチェック)
- 現金残高がキャッシュフロー計算書の期末現金と一致している
- 運転資本勘定が補助スケジュールと一致している(該当する場合)
- 利益剰余金が正しく繰り越されている:前期の利益剰余金 + 純利益 − 配当金 ± 調整額 = 期末の利益剰余金
- 負債残高が負債スケジュールと一致している(該当する場合)
- すべての貸借対照表項目の符号が適切である(資産はプラス、大半の負債はプラス)
キャッシュフロー計算書(CF)の品質チェック
- CFO の冒頭の純利益が損益計算書の純利益と一致している
- 非現金項目の加算戻し(D&A、SBC など)が元のスケジュール/計算書と一致している
- 運転資本の増減の符号が正しい(資産の増加 = 現金の使用 = マイナス)
- CapEx が PP&E スケジュールまたは固定資産の増減表と一致している
- 財務活動が貸借対照表の負債勘定および資本勘定の変動と一致している
- 期末現金が貸借対照表の現金と一致している
- 期首現金が前期の期末現金と一致している
補助スケジュールの品質チェック
- 期首残高が前期の期末残高と一致している
- 増減表のロジックが完全である(期首残高 + 追加額 − 控除額 = 期末残高)
- スケジュールの合計が主要計算書の項目と一致している
- 計算に使用する前提条件が前提条件タブと一致している
ステップ 5:計算書間の整合性チェック
個々のシートを検証した後、3 つの計算書が適切に連動していることを確認します。
| チェック項目 | 数式 | 期待される結果 |
|---|---|---|
| 貸借対照表の一致 | 資産 - 負債 - 資本 | = 0 |
| 現金の照合 | CF 期末現金 - BS 現金 | = 0 |
| 純利益の連動 | IS 純利益 - CF の開始時純利益 | = 0 |
| 利益剰余金 | 前期の利益剰余金 + NI - 配当金 - BS 期末利益剰余金 | = 0(必要に応じて SBC/その他の項目を調整) |
ステップ 6:最終確認
モデルを完成とみなす前に、以下を確認します。
- すべてのシナリオを切り替えて(該当する場合)、各ケースでチェックに合格することを確認する
- すべての #REF!、#DIV/0!、#VALUE!、#NAME? エラーを確認し、解決するか記録する
- すべての入力セルに値が入力されていることを確認する(プレースホルダー値を検索する)
- すべてのタブで単位が統一されていることを確認する
- 追加の変更を行う前に、クリーンなバージョンを保存する
モデルの検証と監査
このセクションでは、完成したテンプレートの検証チェックと監査手順をまとめています。
主要な連動項目(常に成立する必要があります)
すべての数式の詳細については、references/formulas.md を参照してください。
| チェック項目 | 数式 | 期待される結果 |
|---|---|---|
| 貸借対照表の一致 | 資産 - 負債 - 資本 | = 0 |
| 現金の照合 | CF 期末現金 - BS 現金 | = 0 |
| 月次と年次の現金 | 月次の期末現金 - 年次の期末現金 | = 0 |
| 純利益の連動 | IS 純利益 - CF の開始時純利益 | = 0 |
| 利益剰余金 | 前期の利益剰余金 + NI + SBC - 配当金 - BS 期末利益剰余金 | = 0 |
| 資本調達 | Δ普通株式/APIC(BS) - 株式発行(CFF) | = 0 |
| Year 0 の資本 | 調達した資本(Year 0) - 期首の資本(Year 1) | = 0 |
符号規則の参照
| 計算書 | 項目 | 符号規則 |
|---|---|---|
| CFO | D&A、SBC | プラス(加算戻し) |
| CFO | ΔAR(増加) | マイナス(現金の使用) |
| CFO | ΔAP(増加) | プラス(現金の源泉) |
| CFI | CapEx | マイナス |
| CFF | 負債の発行 | プラス |
| CFF | 負債の返済 | マイナス |
| CFF | 配当金 | マイナス |
循環参照の処理
支払利息によって循環参照が発生します。支払利息 → 純利益 → 現金 → 負債残高 → 支払利息
Excel で反復計算を有効にします。ファイル → オプション → 数式 → 反復計算を有効にする。最大反復回数を 100、最大変更を 0.001 に設定します。Assumptions タブにサーキットブレーカーの切り替えを追加します。
チェック項目のカテゴリ
セクション 1:通貨の整合性
- 通貨が特定され、Assumptions に記載されている
- すべてのタブで通貨記号と単位が統一されている
- 単位の行がモデルの通貨と一致している
セクション 2:貸借対照表の整合性
- 資産 = 負債 + 資本(各期間)
- 数式:資産 - 負債 - 資本(0 であること)
セクション 3:キャッシュフローの整合性
- 現金残高が貸借対照表と一致(CF 期末現金 = BS 現金)
- 月次と年次の現金:期末現金(月次)= 期末現金(年次)
- 純利益が損益計算書と一致(CF 純利益 = IS 純利益)
- D&A がスケジュールと一致
- SBC が IS と一致
- ΔAR、ΔInventory、ΔAP が運転資本スケジュールと一致
- CapEx が DA スケジュールと一致
セクション 4:利益剰余金
- RE ロールフォワードチェック:期首 RE + 純利益 + SBC - 配当 = 期末 RE
- デバッグ用に内訳を表示
セクション 5:運転資本
- AR、Inventory、AP が貸借対照表と一致
- DSO、DIO、DPO の妥当性チェック(通常の範囲外の場合に警告)
セクション 6:負債スケジュール
- 負債総額が貸借対照表と一致(流動負債 + 長期負債)
- 支払利息の計算が IS と一致
セクション 6b:株式による資金調達
- 株式発行による収入が、貸借対照表の普通株式/APIC の増加と一致
- 株式による現金増加額 = 資本勘定の増加額(貸借が一致すること)
- 株式調達の照合:ΔCommon Stock/APIC(BS)= 株式発行(CFF)(0 であること)
- 0 年目の株式照合:株式調達額(0 年目)= 資本金期首残高(1 年目)
セクション 6c:NOL スケジュール
- NOL 期首残高(1 年目/設立時)= 0(新規事業の NOL はゼロから開始)
- NOL が増加するのは EBT < 0 の場合のみ(NOL の発生には損失の計上が必要)
- DTA が貸借対照表と一致(NOL スケジュールの DTA = BS 繰延税金資産)
- NOL の利用額 ≤ EBT の 80%(2017 年以降の連邦制限)
- NOL 残高が非負(保有残高を超えて利用できない)
- NOL が発生するのは EBT < 0 の場合のみ
- 課税所得 ≤ 0 の場合、税金費用 = 0
セクション 7:シナリオの階層
- 絶対額の指標:上振れ > ベース > 下振れ(NI、EBITDA、FCF)
- マージン:上振れ > ベース > 下振れ(GM%、EBITDA%、NI%)
- 信用指標:レバレッジでは上振れ < ベース < 下振れ(逆転)
セクション 8:数式の整合性
- COGS、S&M、G&A、R&D、SBC が売上高に対する割合に基づいている(ハードコードなし)
- 予測期間全体で数式が一貫している
- #REF!、#DIV/0!、#VALUE! エラーがない
セクション 9:信用指標のしきい値
- コベナンツのしきい値に基づいて指標を緑/黄/赤で表示
- 赤信号となった項目の概要
マスターチェック数式
各セクションのステータスを 1 つのマスターチェックに集約します。
- すべてのセクションに合格 → "✓ ALL CHECKS PASS"
- いずれかのセクションに不合格 → "✗ ERRORS DETECTED - REVIEW BELOW"
簡単なデバッグ手順
マスターステータスにエラーが表示された場合:
- スクロールして赤く強調表示されたセクションを探します
- どのチェックカテゴリに不合格があるかを特定します
- 該当するタブに移動して調査します
- 根本的な問題を修正します
- Checks タブに戻り、解決したことを確認します