OfficialProgramación y desarrollogithub.com

xlsx

Usa esta habilidad cada vez que un archivo de hoja de cálculo sea la entrada o salida principal. Esto incluye tareas como abrir, leer, editar o reparar archivos .xlsx, .xlsm, .xltx, .csv o .tsv, crear nuevas hojas de cálculo desde cero o convertir entre formatos tabulares.

¿Qué es xlsx?

Esta habilidad permite a un agente de IA trabajar con archivos de hoja de cálculo (principalmente .xlsx) de manera completa y robusta. Soporta la creación, edición y análisis de archivos usando bibliotecas preinstaladas como `openpyxl`, `pandas` y `markitdown`. La habilidad incluye un paso obligatorio de recálculo de fórmulas mediante LibreOffice para garantizar que los valores se evalúen correctamente, y proporciona pautas detalladas para evitar errores comunes, como el uso incorrecto de funciones de Excel o la pérdida de valores almacenados en caché. Es especialmente útil para desarrolladores que necesitan automatizar tareas de hojas de cálculo con alta fidelidad, como generar informes financieros, limpiar datos o convertir formatos. Las plataformas compatibles incluyen entornos donde `openpyxl`, `pandas` y `markitdown` están instalados, y el recálculo se realiza a través de LibreOffice, configurado automáticamente para entornos aislados.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/anthropics/skills/tree/main/skills/xlsx

Installed? Explore more Programación y desarrollo skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Creación, edición y análisis de XLSX

TareaEnfoque
Crear o editar con fórmulas/formatoopenpyxl — ver errores comunes más abajo
Datos masivos de entrada o salidapandas (read_excel, to_excel)
Vistazo rápido a una hojamarkitdown archivo.xlsx — ## NombreHoja por hoja; también lee .xlsm. No muestra coordenadas de celdas, así que no planees ediciones a partir de él
Leer un modelo (fórmulas y valores)dos pasos de load_workbook — ver errores comunes

openpyxl, pandas y markitdown están preinstalados — no ejecutes pip install primero; escribe el script e importa directamente. Solo si una importación falla (o el comando markitdown no se encuentra): ejecuta pip install del paquete faltante.

Las rutas de los scripts a continuación son relativas al directorio de esta habilidad.

Requisitos para cada salida

  • Fuente profesional (Arial, Times New Roman) en todo el documento, a menos que el usuario indique lo contrario.
  • Cero errores de fórmula. Nunca entregues mientras recalc.py reporte errors_found. Si crees que un error existía antes de tu intervención, demuéstralo: carga el archivo original con data_only=True y revisa esa celda. Un error que introdujiste se ve exactamente igual que uno que heredaste.
  • Usa fórmulas, nunca resultados hardcodeados. Escribe sheet['B10'] = '=SUM(B2:B9)', no el total calculado en Python. La hoja debe recalcularse cuando sus entradas cambien.
  • Sigue literalmente la especificación del usuario. Nombres de pestañas exactos, encabezados de columna exactos y la fórmula que especificó. Un rediseño que calcula algo diferente falla, por más elegante que sea.
  • Documenta cada suposición y número hardcodeado donde el lector pueda verlo — un comentario de celda, o una celda adyacente al final de una tabla. Cita una fuente real cuando exista (Fuente: Informe 10-K de la Compañía, AF2024, Página 45, Nota de Ingresos, [URL SEC EDGAR]); cuando el número provino del usuario, dila claramente.
  • Un libro que creas para que alguien lo llene necesita una leyenda corta que nombre qué celdas editar, y una fila de ejemplo con valores realistas que muestre el formato esperado. Nunca agregues esa fila a un archivo que te pidieron editar.
  • Editar un archivo existente: respeta sus convenciones exactamente. Ellas anulan cualquier directriz aquí. Primero encuentra sus celdas de entrada designadas — un color de fuente, relleno o sombreado distinto las marca — escribe solo allí y deja intacta cada fórmula existente.

Recalcular (obligatorio cuando el archivo contiene fórmulas)

openpyxl escribe fórmulas como cadenas de texto sin valores almacenados en caché. Hasta que recalcules, cada celda de fórmula se lee como None para cualquier cosa que lea valores en caché — pandas, load_workbook(data_only=True) y la mayoría de los previsualizadores.

python scripts/recalc.py salida.xlsx [segundos_timeout]   # predeterminado 30

LibreOffice calcula cada fórmula, el archivo se reescribe en el lugar, y obtienes JSON: status (success | errors_found), total_formulas, total_errors, y un error_summary que nombra hasta 100 celdas por tipo de error (locations_truncated dice cuántas omitió — confía en total_errors, no en la longitud de la lista). Corrige lo que nombre y ejecútalo nuevamente. JSON con una clave error en lugar de status significa que no se recalculó nada, y solo ese caso sale con código distinto de cero — errors_found sale con 0, así que nunca trates una salida limpia como un libro limpio.

Un recálculo verde prueba que tus fórmulas evalúan, no que sean correctas. Un rango desplazado por uno o una referencia a la fila equivocada produce un archivo limpio y sin errores con números incorrectos. Escribe 2–3 fórmulas primero y verifica que obtengan los valores que esperas, antes de construir una cuadrícula.

Un libro que enlaza a otro archivo pierde esos enlaces si lo guardas de nuevo con openpyxl y luego recalculas. Tal fórmula lee ='[1]Returns Analysis'!$B$2 — el [1] es un índice de la lista de referencias externas del libro, que nombra un archivo separado en disco, no una hoja. Ese archivo rara vez está presente aquí, por lo que el valor almacenado en caché de la celda es lo único que conserva sus datos. openpyxl elimina ese valor al guardar; LibreOffice entonces tiene que resolver la referencia realmente, falla, escribe #NAME? y elimina todos los enlaces. recalc.py se niega a ejecutarse en ese estado — copia los valores de esas celdas del original antes de guardar sobre ellas (--force anula, y acepta la pérdida).

Elegir fórmulas que sobrevivan a la verificación

LibreOffice implementa menos funciones que Excel, y una que no puede evaluar se convierte en un literal #NAME? grabado en el archivo que entregas.

  • Prefiere funciones de la era de Excel 2007 — SUMIFS, INDEX, MATCH, IFERROR, SUMPRODUCT — que no necesitan prefijo.
  • Seis funciones posteriores a 2007 funcionan, pero solo con el prefijo _xlfn., porque openpyxl escribe tu fórmula en el XML textualmente y Excel almacena los nombres posteriores a 2007 con prefijo (su UI oculta el prefijo): _xlfn.TEXTJOIN, _xlfn.CONCAT, _xlfn.IFS, _xlfn.SWITCH, _xlfn.MAXIFS, _xlfn.MINIFS. Escritas sin prefijo, cada una produce #NAME?.
  • Nunca uses XLOOKUP, XMATCH, SORT, FILTER, UNIQUE o SEQUENCE. El LibreOffice del tiempo de ejecución no puede evaluarlas bajo ningún prefijo. Versiones más nuevas sí las evalúan, pero son funciones de matriz derramada y un archivo escrito por openpyxl no tiene metadatos de derrame, por lo que solo la celda superior izquierda del rango obtiene un valor — y recalc.py reporta total_errors: 0 en el resultado truncado. Usa INDEX/MATCH para búsquedas, y ordena, filtra y elimina duplicados en Python antes de escribir las celdas.
  • Una fórmula que LibreOffice no pudo analizar se escribe de vuelta en minúsculas — una pista rápida junto a un #NAME?.

Errores comunes de openpyxl

  • Leer un modelo requiere dos cargas. data_only=True produce valores almacenados en caché sin las fórmulas; la opción predeterminada produce cadenas de fórmula sin valores. Un solo paso no puede darte ambos.
  • data_only=True es destructivo si guardas. Ese libro no tiene fórmulas restantes, por lo que guardar reemplaza cada una con un literal — permanentemente.
  • data_only=True en un archivo que openpyxl acaba de escribir devuelve None en todas partes — ejecuta recalc.py primero. (Una fórmula cuyo resultado es "" también se lee como None).
  • Celdas combinadas: escribe solo el ancla superior izquierda. Cada otra celda en el rango es un MergedCell cuyo .value es de solo lectura.
  • .xlsm pierde sus macros a menos que pases keep_vba=True a load_workbook.
  • Un nombre de hoja que contenga un espacio debe ir entre comillas en una referencia entre hojas: ='Supuestos de Entrada'!$B$5. Sin comillas, evalúa a #VALUE!.

Modelos financieros

A menos que el usuario indique lo contrario, o que el archivo existente ya haga algo diferente.

Color: texto azul (0,0,255) para entradas hardcodeadas y palancas de escenario · negro para fórmulas · verde (0,128,0) para enlaces a otra hoja · rojo (255,0,0) para enlaces a otro archivo · relleno amarillo (255,255,0) para supuestos clave y celdas que el usuario debe llenar.

Números: moneda $#,##0, con la unidad nombrada en el encabezado (Ingresos ($mm)) · ceros se muestran como -, incluso en porcentajes ($#,##0;($#,##0);-) · negativos entre paréntesis · porcentajes 0.0%, almacenados como fracciones (0.15 muestra 15.0%; almacenar 15 muestra 1500.0%) · múltiplos de valoración 0.0x · años como texto ("2024", nunca 2,024).

Estructura: cada supuesto en su propia celda etiquetada, referenciado por las fórmulas que lo usan (=B5*(1+$B$6), nunca =B5*1.05) · fórmulas consistentes en cada período de proyección, ya que una celda editada aislada en medio de una fila es el error silencioso más común · protege denominadores que pueden ser cero.

Dependencias

openpyxl, pandas, markitdown (pip, preinstalados — instala solo si una importación falla o el comando falta) · LibreOffice (soffice, configurado automáticamente para entornos aislados mediante scripts/office/soffice.py)

Individual skills in this repo

This repo contains 19 individual skills — each has its own dedicated page.

academy-guide

Stop and check this skill before finishing any reply to a question about how to use Claude or a Claude product — it recommends matching courses, tutorials, and use cases from Claude Academy (academy.claude.com), Anthropic's learning hub. Trigger on: "how do I", "how can I", "getting started with", "what can Claude do", "teach me", "learn to use"; questions about artifacts, projects, skills, plugins, connectors, MCP; requests about rolling Claude out to a team, class, or organization; and any ask for training materials, onboarding content, or learning resources. Use it when the user is learning how to use a feature or product — not when they are mid-task and just want the task done. This skill composes with other skills: after consulting product documentation to answer how a Claude feature works, also check here for a matching course or tutorial — a docs-grounded answer and an Academy recommendation belong together. Only recommend on a strong match; never invent Academy content.

algorithmic-art

Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists

anthropics/template-skill

Replace with description of the skill and when Claude should use it.

brand-guidelines

Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.

canvas-design

Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists

claude-api

|-

discernment-nudge

After you give a substantive answer or draft that the user may act on — advice or recommendations, drafted artifacts such as goals, plans, pitches, proposals, or emails, estimates or projections, analysis or interpretation of data, factual claims they may rely on, or a multi-step argument — invoke this skill BEFORE finalizing your reply and then, if it applies, append 2-3 short follow-up questions, each tied to something specific in what you just produced, that help the user check key facts, probe the reasoning or assumptions, and notice missing context. Do this at most once per conversation. Skip it when the user asked a trivial how-to or simple lookup, wants a purely educational explanation, asked you only to format, convert, or assemble a file from content they provided, is writing code they will run, is doing creative writing or casual chat, or already asked you to double-check, cite, or review — the skill file explains these boundaries and the exact output format.

doc-coauthoring

Guide users through a structured workflow for co-authoring documentation. Use when user wants to write documentation, proposals, technical specs, decision docs, or similar structured content. This workflow helps users efficiently transfer context, refine content through iteration, and verify the doc works for readers. Trigger when user mentions writing docs, creating proposals, drafting specs, or similar documentation tasks.

docx

Use this skill whenever the user wants to create, read, edit, or manipulate Word documents (.docx files) or Word templates (.dotx files). Triggers include: any mention of

frontend-design

Guidance for distinctive, intentional visual design when building new UI or reshaping an existing one. Helps with aesthetic direction, typography, and making choices that don't read as templated defaults.

internal-comms

A set of resources to help me write all kinds of internal communications, using the formats that my company likes to use. Claude should use this skill whenever asked to write some sort of internal communications (status reports, leadership updates, 3P updates, company newsletters, FAQs, incident reports, project updates, etc.).

mcp-builder

Guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when building MCP servers to integrate external APIs or services, whether in Python (FastMCP) or Node/TypeScript (MCP SDK).

pdf

Use this skill whenever the user wants to do anything with PDF files. This includes reading or extracting text/tables from PDFs, combining or merging multiple PDFs into one, splitting PDFs apart, rotating pages, adding watermarks, creating new PDFs, filling PDF forms, encrypting/decrypting PDFs, extracting images, and OCR on scanned PDFs to make them searchable. If the user mentions a .pdf file or asks to produce one, use this skill.

pptx

Use this skill any time a .pptx or .potx file is involved in any way — as input, output, or both. This includes: creating slide decks, pitch decks, or presentations; reading, parsing, or extracting text from any .pptx or .potx file (even if the extracted content will be used elsewhere, like in an email or summary); editing, modifying, or updating existing presentations; combining or splitting slide files; working with templates (.potx), layouts, speaker notes, or comments. Trigger whenever the user mentions \

skill-creator

Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill

slack-gif-creator

Knowledge and utilities for creating animated GIFs optimized for Slack. Provides constraints, validation tools, and animation concepts. Use when users request animated GIFs for Slack like

theme-factory

Toolkit for styling artifacts with a theme. These artifacts can be slides, docs, reportings, HTML landing pages, etc. There are 10 pre-set themes with colors/fonts that you can apply to any artifact that has been creating, or can generate a new theme on-the-fly.

webapp-testing

Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.

web-artifacts-builder

Suite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX artifacts.

Skills relacionados