Agent skill · Data & Analytics

excel-model

Build a real, formula-driven Excel (.xlsx) model — not a static table. Use when asked to build an Excel model, a financial model, a budget/forecast spreadsheet, or any .xlsx with live formulas a user can edit. Produces an actual .xlsx file via a generated openpyxl script: an inputs/assumptions sheet, calculation sheets with real cell formulas, and formatting — so changing an input recalculates the model. Requires a code-execution environment (Claude Code, the API code tool, or Claude.ai).

mohitagw15856github.com/mohitagw15856GitHub ↗
claude-codecursorships scriptsMIT
Install
npx skills add mohitagw15856/pm-claude-skills --skill excel-model --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 2
SKILL.md size: 4 KB
Bundled scripts: yes
Path: skills/excel-model/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 1,255
Language: HTML

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

# Excel Model Skill A model is only useful if it's *live* — change an assumption and everything recalculates. A markdown table can't do that; a real `.xlsx` with cell formulas can. This skill builds an actual Excel workbook by **writing and running an `openpyxl` script**: a clean inputs sheet, calculation sheets that reference those inputs with real `=` formulas, and sensible formatting — so the user gets a file they can drive, not a snapshot. > **Environment:** this produces a binary file, so it needs a place to run code — **Claude Code**, the > **Anthropic API code-execution tool**, or **Claude.ai** (with the analysis/code tool). In the > browser playground (no code execution), use the markdown output as the spec instead. ## Required Inputs Ask for these only if they aren't already provided: - **What the model is** — financial model, budget, forecast, pricing model, scenario planner, etc. - **The inputs/assumptions** — the driver variables (and rough values) the user will change. - **The outputs** — what it should compute (revenue, burn, margins, totals, a P&L, etc.). - **Structure** — periods (months/years), tiers/segments, and any required layout. ## Process 1. **Design before

What's inside
Steps it walks through
  1. Required Inputs
  2. Process
  3. Output Format
  4. Quality Checks
  5. Anti-Patterns
  6. Based On
  7. Programmatic Helper
Ships with 1 file
  • scripts/xlsx_tool.py
Commands it runs
Build a workbook from JSON (numbers stay numbers, "=B2*C2" becomes a live formula)
python3 scripts/xlsx_tool.py create model.xlsx --data '{"Model": [["Item","Qty","Price","Total"],["Widget",4,9.5,"=B2*C2"]]}'
Fill {{placeholders}} in an existing template workbook
python3 scripts/xlsx_tool.py fill template.xlsx out.xlsx --values '{"month":"July","revenue":21000}'
More from pm-claude-skills
All skills →
About this skill
What does the excel-model skill do?

Build a real, formula-driven Excel (.xlsx) model — not a static table. Use when asked to build an Excel model, a financial model, a budget/forecast spreadsheet, or any .xlsx with live formulas a user can edit. Produces an actual .xlsx file via a generated openpyxl script: an inputs/assumptions sheet, calculation sheets with real cell formulas, and formatting — so changing an input recalculates the model. Requires a code-execution environment (Claude Code, the API code tool, or Claude.ai).

How do I install it?

Run `npx skills add mohitagw15856/pm-claude-skills --skill excel-model --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From mohitagw15856/pm-claude-skills, a repository with 1,255 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going