確定申告の住宅ローン控除申告書、Claude CodeのSkillsで自動化してみた

住宅ローン控除の申告書Excelを、Claude CodeのSkills機能で自動生成できるようにしてみました。
源泉徴収票のPDFと年末残高証明書の画像ファイルをフォルダにポンと入れて、スキルを実行するだけ。
/housing-loan-deduction C:\確定申告\2026年
これだけで申告書Excelが出来上がる。来年から毎年使い回せる!
きっかけ
住宅ローン控除って2年目以降は年末調整でできるんだけど、今年はたまたま申請書の記載不備があって、会社の年末調整で処理できなかった。結果、自分で確定申告して還付を受ける羽目に…。
で、この「住宅借入金等特別控除申告書」ってやつがめんどくさい。
- 源泉徴収票から数字拾って
- 年末残高証明書(うちは2枚ある)から残高拾って合算して
- 取得対価と比較して少ない方を…
- 居住用割合かけて…
- 上限2,000万円チェックして…
- 控除率1%かけて100円未満切り捨てて…
毎年同じことやってるんだから、自動化すればよくない?
ちょうどClaude Codeを普段使いしてるし、Skills機能で仕組み化してみることにした。
やったこと全体像
1. 申告書のフォーマットをExcelで再現(←ここが一番大変だった)
2. テンプレートExcelを作成(プレースホルダー方式)
3. Claude Code Skillとして定義
4. 実行テスト
Step 1: 申告書フォーマットの再現 — ChatGPTとの合わせ技
最初、Claude Codeに申告書の画像を読ませて「これと同じレイアウトのExcel作って」とお願いしたんだけど、なかなかうまくいきませんでした。
何回かやり取りしても微妙にズレる。画像からの正確なレイアウト再現って、LLMにとってはまだ難しいみたい。
ChatGPTでMarkdown化
そこで作戦変更。申告書の画像を1区画ごとに分けてChatGPTに読ませ、それぞれMarkdownテーブルに変換してもらった。申告書全体を一気に読ませると精度が落ちるけど、上段の個人情報エリア、①〜⑧のメイン表、証明事項の(イ)〜(ト)…と区画ごとに分けてインプットすることで、いい感じのテンプレートができた。
| 項目 | 番号 | A 住宅のみ | B 土地等のみ | C 住宅及び土地等 | D 増改築等 |
|------|------|-----------|-------------|----------------|-----------|
| 新築、購入及び増改築等に係る住宅借入金等の年末残高... | ① | 円( )| 円( )| 円( )| 円( )|
| 住宅借入金等の年末残高... | ② | (%)円 | (%)円 | (100.00%)円 | (%)円 |
...
このMarkdown(住宅控除申請書FORMAT.md)をClaude Codeに渡したら、一発で正確なExcelが生成できた。
Step 2: テンプレートExcel
完成したExcelから個人情報や年度固有の値を抜いて、《プレースホルダー》 に置き換えたテンプレートをClaudeCodeに作らせました。
| セル | プレースホルダー | 置換する値 |
|---|---|---|
| B4 | 《支払者名称》 |
勤務先名(源泉徴収票から) |
| D4 | 《フリガナ》\n《氏名》 |
本人情報 |
| E9 | 《年末残高合算式》 |
残高の加算式(例: =15000000+10000000) |
| E11 | 《③数式》 |
=MIN(E10,取得対価) |
| C13 | 《⑤数式》 |
=MIN(E12,控除限度額) |
| F13 | 《年間所得見積額》 |
給与所得控除後の金額 |
数式セル(②〜④、⑧)はテンプレートに入ったまま。①の年末残高を入れれば自動で連鎖計算される。
ポイント:
- 書式・罫線・凡例・色分けは全てテンプレートに含まれる
- 紙に記入するセルは全部黄色背景(転記忘れ防止)
- I列に各セルの記入根拠を注釈として記載
作ったテンプレートはこんな感じ

Step 3: Claude Code Skill化
Skillとは?
Claude CodeにはSkillsという仕組みがある。~/.claude/skills/ 配下にSKILL.mdを置くと、スラッシュコマンドとして呼び出せるようになる。
~/.claude/skills/housing-loan-deduction/
├── SKILL.md ← スキル定義
├── 住宅借入金等特別控除申告書_テンプレート.xlsx ← テンプレート
└── 住宅控除申請書FORMAT.md ← レイアウト定義
SKILL.mdの中身(抜粋)
---
name: housing-loan-deduction
description: 住宅借入金等特別控除申告書のExcelを入力資料から自動生成する
argument-hint: <入力フォルダパス>
---
処理フローはこんな感じ(これもClaudeCodeと相談しながら自動生成してもらった):
Step 0: 入力チェック(必須資料が揃ってるか)
Step 1: テンプレートをコピー
Step 2: 入力資料の読み取り(PDF・画像から直接!)
Step 3: 控除ルールのWEBリサーチ(税制改正チェック)
Step 4: プレースホルダーを実際の値に置換
Step 5: 数式再計算とエラーチェック
Step 6: 完了報告(控除額・根拠一覧)
入力チェックが地味に便利
資料が足りないと止まって教えてくれる。
以下の資料が見つかりません。フォルダに配置してから再実行してください。
- 年末残高等証明書(年末残高証明1.JPG のようなファイル名で配置)
Step 4: 実際に動かしてみた
インプット
フォルダにこれだけ入れる:
C:\確定申告\2025年\
├── 令和07年分給与所得の源泉徴収票.pdf ← PDFそのまま
├── 年末残高等証明1.JPG ← 銀行からの証明書を撮影
└── 年末残高等証明2.JPG ← 2本目のローン分
源泉徴収票はPDFをそのまま、年末残高証明書はスマホで撮った画像をそのまま放り込むだけ。 OCRとか前処理は一切不要。Claude Codeがマルチモーダルで直接読んでくれる。
実行
/housing-loan-deduction C:\確定申告\2025年
結果(サンプルデータ)
数分で完了。こんな感じの報告が出る:
| 項目 | 値 | 根拠 |
|---|---|---|
| ① 年末残高合算 | 25,000,000円 | 残高証明1: 15,000,000 + 残高証明2: 10,000,000 |
| ② 住宅借入金等の年末残高 | 25,000,000円 | =①(単独債務100%) |
| ③ ②と取得対価の少ない方 | 25,000,000円 | =MIN(②, 30,000,000) |
| ④ ③×居住用割合 | 25,000,000円 | =③(居住用割合100%) |
| ⑤ 年末残高等(上限2,000万) | 20,000,000円 | =MIN(④, 20,000,000) |
| ⑧ 控除額 | 200,000円 | =FLOOR(⑤×1%, 100) |
所得要件チェック:
- 年間所得見積額: 5,000,000円 → 3,000万円以下 OK
Excelファイルも自動生成されて、あとは紙に転記するだけ。
黄色セルの値を上から順に紙の申告書に書き写せばいい。

WEBリサーチも自動でやってくれる
地味にありがたいのが、Step 3で最新の税制改正を自動チェックしてくれること。
実行ログを見ると:
Web Search("住宅ローン控除 令和2年入居 控除限度額...")
Fetch(https://www.nta.go.jp/taxes/shiraberu/taxanswer/shotoku/1211-1.htm)
Fetch(https://www.nta.go.jp/taxes/shiraberu/taxanswer/shotoku/1212.htm)
国税庁のサイトまで見に行って、控除率や限度額が変わっていないか確認してくれる。税制改正で控除率が変わっても気づける。
工夫したポイント
1. PDF・画像を直接インプットにできる
これが一番のポイント。源泉徴収票のPDFも年末残高証明書の写真も、そのまま入力として使える。わざわざ数値を手で入力する必要がない。Claude Codeのマルチモーダル能力をフルに活かしてる。
2. 数式でファクトチェック可能
年末残高のセルは =15000000+10000000 のように加算式で入れてある。ハードコードされた合計値じゃなくて、どの証明書のいくらを足したかが数式で追える。
3. プレースホルダー方式のテンプレート
《支払者名称》 《年末残高合算式》 のように、変更が必要な箇所が一目瞭然。SKILL.mdにもプレースホルダー一覧表を書いてあるので、Claudeが迷わない。
4. 入力不足を事前チェック
必須資料(源泉徴収票・年末残高証明書)が揃っていなければ、何が足りないか教えて止まる。途中まで処理して失敗、みたいなことがない。
フォルダ構成
最終的にこうなった:
~/.claude/skills/housing-loan-deduction/ ← Skill本体
├── SKILL.md
├── 住宅借入金等特別控除申告書_テンプレート.xlsx
└── 住宅控除申請書FORMAT.md
確定申告/
├── 2025年/ ← 今年の実績
│ ├── 源泉徴収票.pdf
│ ├── 年末残高等証明1.JPG
│ ├── 年末残高等証明2.JPG
│ └── 住宅借入金等特別控除申告書_令和7年分.xlsx ← 生成物
│
└── 2026年/ ← 来年はここに資料入れるだけ
├── 源泉徴収票.pdf
└── 年末残高等証明1.JPG
まとめ
- 住宅ローン控除の申告書作成をClaude Code Skillで自動化した
- 源泉徴収票PDF・年末残高証明書の画像をそのままインプットにできる
- ChatGPTで申告書フォーマットをMarkdown化→Claude Codeでコード化、の合わせ技が効いた
- テンプレートのプレースホルダー方式で、来年以降も使い回せる
- 税制改正もWEBリサーチで自動チェック
正直、確定申告の書類作成に年間30分〜1時間かけてたのが、フォルダに資料入れてコマンド1発になった。
これからは、めんどくさい繰り返し作業は全部SKILL化してハッピーになる!
Discussion