# XLSX

> Create polished Excel workbooks for budgets, trackers, and data tables.

- Skill: `modsetter/xlsx-2` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add modsetter/xlsx-2`
- Raw SKILL.md: https://api.skillmd.com/api/skills/modsetter/xlsx-2/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Data & Analytics
- Author: MODSetter (https://skillmd.com/u/modsetter)
- Updated: 2026-09-21
- Page: https://skillmd.com/skills/modsetter/xlsx-2

---


# XLSX

Author the workbook with `xlsxwriter`, saving to a `BytesIO` opened with
`{"in_memory": True}`. XlsxWriter is preferred because it writes the explicit
formula caches the in-browser grid needs.

## Authoring rules

- Prefer one clear purpose per worksheet. Name sheets for their content, not
  `Sheet1` / `Sheet2`.
- Set column widths deliberately. Freeze header rows when tables are scrolled.
- Style headers once (bold, fill, borders) and reuse the format objects. Prefer
  number formats (`#,##0.00`, `0%`, dates) over pre-formatted strings.
- Write formulas with **both** the formula string and a computed cached value:
  `worksheet.write_formula("B2", "=A2*1.1", fmt, 110)`. The grid shows the cache
  rather than recalculating, so a missing cache renders blank.
- Never leave Excel error literals (`#DIV/0!`, `#REF!`, `#VALUE!`, `#N/A`) as
  cached results. Fix the formula or the inputs instead.
- Keep workbooks compact — prefer tight tables over giant empty ranges.
- Charts, pivot tables, macros, and VBA are out of scope; stick to values,
  formulas, formats, panes, and multiple sheets.

