excel

Inspect and edit Excel workbooks using openpyxl with batch operations and DRM handling.

1|Updated May 13, 2026
One-click install
npx skills add https://github.com/coolrobertj/Agency-Cowork --skill excel-coolrobertj
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: excel
Source: https://github.com/coolrobertj/Agency-Cowork/tree/main/skills/excel/skills/excel
Command: npx skills add https://github.com/coolrobertj/Agency-Cowork --skill excel-coolrobertj

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires openpyxl, and includes scripts (resource) components.

What problem does it solve? Editing Excel workbooks programmatically is error-prone: DRM-protected files fail with cryptic errors, formulas don't evaluate, and one-off edits are slow. This Skill provides a structured inspect-then-batch-edit workflow for .xlsx files that handles these pitfalls. ## Core Features & Use Cases - Workbook Inspection: Examine sheet names, dimensions, headers, sample data, formulas, charts, merged cells, and filters before making changes. - Batch Editing: Apply multiple operations in one call — update cells, find-replace, add/insert/delete rows, and copy/rename/delete sheets. - Workbook Creation: Build new .xlsx files with multiple sheets, charts, formulas, conditional formatting, and freeze panes. - DRM Handling: Detect, strip, and re-apply IRM protection on Microsoft files via COM automation. - Use Case: Download a status tracker from SharePoint, update dozens of cells and append new log rows in a single batch operation, then upload the edited workbook back. ## Quick Start Ask your agent to inspect the workbook at output/report.xlsx and update the status column for all rows marked At Risk.

Frequently Asked Questions about excel

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I edit an Excel file programmatically with Python?

Use openpyxl to load the workbook, then apply edits such as updating cells, find-replace, or adding rows. This Skill wraps those operations in a batch editor so multiple changes apply in one command after an initial inspection step.

How to update multiple Excel cells in one operation?

Use the batch action with a JSON array of operations, such as update-cells with cell-value pairs, find-replace, and add-rows. Batch editing is preferred over single-action calls because it applies all changes in one pass.

Why does openpyxl say my Excel file is not a valid OOXML file?

This error usually means the file is DRM-protected with IRM, which wraps the XLSX in an OLE2 container with a D0 CF header. Check the file header bytes first, then strip DRM via the COM-based handler before opening with openpyxl.

Does openpyxl evaluate Excel formulas when reading values?

No, openpyxl does not evaluate formulas. Inspection shows the formula text like =SUM(A1:A10), and computed values are only available if Excel last saved the file with cached values.

Can I edit DRM-protected Excel files on macOS?

No, the DRM strip and re-apply handler requires Office COM automation, which is Windows-only. On macOS, protected files cannot be edited and the user should be warned that a Windows machine is required.

What are the limitations of find-replace across Excel sheets?

Running find-replace without a sheet parameter searches all sheets, which can silently change data in unexpected places. Always scope the operation to a specific sheet when the search term may appear in multiple locations.