# 経営ダッシュボード エラーのデバッグ方法 ## 🚀 クイックスタート エラーが発生している場合、以下の手順で原因を特定できます: ### 1. デバッグ版をデプロイ (2分) ``` 1. Google Spreadsheet を開く 2. 「拡張機能」→「Apps Script」 3. Code.gs の内容を全て削除 4. Code-debug.gs の内容をコピー&ペースト 5. 保存 (Ctrl+S) 6. スプレッドシートを再読み込み ``` ### 2. 診断を実行 (30秒) ``` 1. メニュー「🔷 GemEgg予実管理 (DEBUG)」→「🔍 診断を実行」 2. 結果を確認 - ✅ エラーなし → ステップ3へ - ❌ エラーあり → エラー内容を確認して修正 ``` ### 3. デバッグ版でダッシュボード更新 (1分) ``` 1. メニュー「📈 経営ダッシュボードを更新 (DEBUG)」 2. Apps Script エディタで「実行ログ」を確認 - 「表示」→「ログ」(Ctrl+Enter) 3. どのセクションでエラーが発生したか確認 ``` --- ## 📊 診断項目 デバッグ版は以下をチェックします: ### ✅ チェック項目 1. **シート存在確認** - 予算入力 - 実績入力 - 予実出力 - 経営ダッシュボード 2. **経営ダッシュボード設定** - C4: 期首月 (例: 2025/4) - C5: 締月 (例: 2025/10) - C29: 現金残高 - 月数計算 (1〜12ヶ月) 3. **予算入力シート構造** - O6: 年間予算売上 - 「販売管理費 計」の存在 4. **実績入力シート構造** - 9行: 売上高 - 18行: 売上総損益金額 - 20行: 役員報酬 - 21行: 給料手当 - 22行: 法定福利費 - 31行: 販売管理費 計 - 32行: 営業損益金額 - 35行: 経常損益金額 --- ## 🔍 ログの見方 ### 正常な実行ログ ``` === 経営ダッシュボード更新開始 === ✓ 経営ダッシュボードシート: 見つかりました ✓ 予算入力シート: 見つかりました ✓ 実績入力シート: 見つかりました --- 設定値の読み込み --- 期首月 (C4): 2025/4 締月 (C5): 2025/10 --- 月数計算 --- 計算された月数: 7ヶ月 --- セクション1: 年間予算 vs 締月地点実績 --- 対象列: 7列目(G)〜13列目 年間予算売上 (O6): 12000000 締月地点実績を計算中... 売上高合計: 5950000 ✓ セクション1: 完了 --- セクション2: 締月地点予算 vs 実績 --- ✓ セクション2: 完了 ... === 更新完了 === ``` ### エラー発生時のログ ``` --- セクション1: 年間予算 vs 締月地点実績 --- 年間予算を読み込み中... ❌ セクション1でエラー: Cannot read property 'getValue' of null エラーメッセージ: セクション1でエラー: Cannot read property 'getValue' of null スタックトレース: at updateAnnualBudgetVsActualDebug(Code:384) at updateDashboardInternalDebug(Code:359) ... ``` **エラーの読み方:** - **どこで**: `セクション1` で - **何が**: `Cannot read property 'getValue' of null` - **詳細**: O6セルが存在しないか、シートが見つからない --- ## 🛠️ よくあるエラー TOP 5 ### 1. 販売管理費 計が見つかりません **エラー:** ``` ⚠️ 「販売管理費 計」が見つかりません 販管費年間予算: 0 ``` **解決:** - 予算入力シートのB列で「販売管理費 計」を探す - 項目名のスペルを確認(全角/半角、スペース) --- ### 2. O6に年間予算売上がありません **エラー:** ``` ⚠️ O6に年間予算売上がありません 年間予算売上 (O6): 0 ``` **解決:** - 予算入力シートのO6セルに値が入っているか確認 - O6 = SUM(C6:N6) のような数式があるか確認 --- ### 3. 月数が異常 **エラー:** ``` ⚠️ 月数が異常です: 0ヶ月 ``` **解決:** - 経営ダッシュボードのC4とC5を確認 - 形式: `2025/4` (スラッシュ区切り) - C4 < C5 (期首 < 締月) --- ### 4. Cannot read property 'getValue' of null **エラー:** ``` ❌ セクションXでエラー: Cannot read property 'getValue' of null ``` **解決:** - 指定されたセルまたはシートが存在しない - 行番号または列番号が間違っている可能性 --- ### 5. シートが見つかりません **エラー:** ``` ❌ 予算入力: 見つかりません ``` **解決:** - シート名を確認(スペース、全角/半角) - シートが削除されていないか確認 --- ## 📋 必要な情報 (問題が解決しない場合) 以下を提供してください: ### 1. 診断レポート全文 メニュー「🔍 診断を実行」の結果 ### 2. 実行ログ全文 Apps Script「表示」→「ログ」の内容 ### 3. エラーメッセージ ダイアログに表示されたメッセージ ### 4. スクリーンショット - 経営ダッシュボード C4〜C5 - 予算入力シート B列、O列 - 実績入力シート B列、G列 --- ## 🔄 元に戻す方法 問題解決後、通常版に戻す: ``` 1. Apps Script エディタを開く 2. Code.gs の内容を全て削除 3. 元の Code.gs をコピー&ペースト 4. 保存 5. スプレッドシートを再読み込み ``` --- ## 📞 サポート 詳細は `DEBUG_GUIDE.md` を参照してください。