
This handles the grunt work of cleaning messy spreadsheets before analysis. It profiles your columns, detects whitespace issues, inconsistent casing, numbers stored as text, mixed date formats, duplicates, and type mismatches, then shows you a summary table of proposed fixes before touching anything. The smart bit is that it writes formulas like TRIM() and VALUE() in helper columns instead of just overwriting your data, so you can see and audit the transformations. It walks through each category of fix and asks for confirmation on destructive operations. Works in Excel via Office JS or on standalone .xlsx files with Python. Good for when you inherit a dataset and need to normalize it without guessing what silent changes got made.
$ npx -y skills add anthropics/financial-services --skill clean-data-xls --agent claude-codeInstalls into .claude/skills of the current project.
Clean messy data in the active sheet or a specified range.
Excel.run(async (context) => {...})). Read via range.values, write helper-column formulas via range.formulas = [["=TRIM(A2)"]]. The in-place vs helper-column decision still applies.A1:F200), use it| Issue | What to look for |
|---|---|
| Whitespace | leading/trailing spaces, double spaces |
| Casing | inconsistent casing in categorical columns (usa / USA / Usa) |
| Number-as-text | numeric values stored as text; stray $, ,, % in number cells |
| Dates | mixed formats in the same column (3/8/26, 2026-03-08, March 8 2026) |
| Duplicates | exact-duplicate rows and near-duplicates (case/whitespace differences) |
| Blanks | empty cells in otherwise-populated columns |
| Mixed types | a column that's 98% numbers but has 3 text entries |
| Encoding | mojibake (é, ’), non-printing characters |
| Errors | #REF!, #N/A, #VALUE!, #DIV/0! |
Show a summary table before changing anything:
| Column | Issue | Count | Proposed Fix |
|---|
=TRIM(A2), =VALUE(SUBSTITUTE(B2,"$","")), =UPPER(C2), =DATEVALUE(D2)), write the formula in an adjacent helper column rather than computing the result in Python and overwriting the original. This keeps the transformation transparent and auditable.Sponsors