# Formatos DOCX y XLSX: cuándo se necesita un documento final completo de la IA

> Guía práctica y completa sobre la generación y procesamiento de documentos DOCX y libros XLSX con IA: comparativa con Markdown y CSV, ingeniería de prompts, fórmulas y automatización en código.

## 1. Cuatro formatos — cuatro tareas distintas: Texto, CSV, DOCX y XLSX

Uno de los errores más comunes al interactuar con la inteligencia artificial es exigir un archivo de inmediato: *«Hazme un Word»* o *«Pásalo todo a Excel»*. La extensión del archivo no aporta valor por sí misma si el formato elegido no se adapta a la siguiente fase del flujo de trabajo con esos datos.

```mermaid
flowchart TD
    A["Petición inicial / Datos en bruto"] --> B{"¿Cuál es el objetivo final de uso?"}
    B -->|Debate, borrador, código, análisis intermedio| C["Texto / Markdown<br><i>(Máxima velocidad, flexibilidad en el chat)</i>"]
    B -->|Importación en BD, migración, lectura por scripts| D["CSV / JSON<br><i>(Formato ligero, estructura plana de datos)</i>"]
    B -->|Informe para clientes, impresión, entrega formal| E["DOCX<br><i>(Estilos, jerarquía H1-H3, encabezados, plantilla de marca)</i>"]
    B -->|Cálculos, modelo financiero, control diario| F["XLSX<br><i>(Múltiples hojas, fórmulas vivas, filtros dinámicos)</i>"]
```

### Matriz de selección del formato idóneo

| Formato | Cuándo utilizarlo | Principales ventajas | Cuándo evitarlo |
| :--- | :--- | :--- | :--- |
| **Texto / Markdown** | Borradores, iteraciones en chat, código | Respuesta instantánea, sin archivos binarios pesados | Informes ejecutivos finales para clientes o dirección |
| **CSV** | Grandes volúmenes de datos (>10.000 filas), exportación a CRM | Universalidad, peso insignificante | Cálculos matemáticos, libros de varias pestañas, estilos |
| **DOCX** | Procedimientos, propuestas B2B, manuales, contratos | Maquetación corporativa, estilos de Word, impresión | Notas preliminares o fragmentos de código |
| **XLSX** | Presupuestos, calendarios, modelos financieros, paneles | Fórmulas activas, totales, filtros, formato condicional | Intercambio simple de listas entre scripts |

> [!NOTE]
> Si le pides al modelo estructurar un temario o esbozar un informe, generar un archivo DOCX es prematuro: resulta mucho más ágil pulir el contenido dentro del chat. DOCX y XLSX deben emplearse cuando el archivo mismo sea el producto final.

---

## 2. Cuándo solicitar DOCX: del borrador al artefacto final

El formato DOCX es indispensable cuando el documento está destinado a ser leído por personas, revisado en procesadores de texto o distribuido formalmente en el entorno corporativo.

### Qué ofrece DOCX frente al texto simple

1. **Jerarquía tipográfica semántica:** Aplicación de estilos nativos de Word (*Título 1*, *Título 2*, *Normal*), lo que genera automáticamente una tabla de contenidos interactiva.
2. **Plantilla visual coherente:** Capacidad de modificar tipografías, márgenes e interlineados en un documento de 50 páginas con un solo clic.
3. **Maquetación de tablas complejas:** Ancho de columna controlado, celdas de encabezado sombreadas y alineación numérica precisa.
4. **Elementos de publicación:** Numeración de páginas, encabezados y pies de página con metadatos del proyecto y saltos de sección.

![Estructura de tabla en documentos DOCX y XLSX](/api/guides-media/automation/docx-xlsx-document-formats-for-ai/images/docx-xlsx-document-formats-for-ai-extra-01.webp)

```markdown
| Fase | Responsable | Plazo |
| :--- | :--- | :--- |
| **Preparación** | Responsable de Marketing | 3 días |
| **Revisión** | Director de Área | 1 día |
| **Publicación** | Gestor de Contenidos | 1 día |
```

> [!TIP]
> Si solo necesitas reescribir un párrafo o evaluar variantes de texto, continúa dentro del chat. Solicita DOCX cuando el archivo definitivo esté listo para entregarse a terceros o archivarse.

---

## 3. Elaboración de especificaciones precisas para la generación de DOCX

Pedir *«Hazme un archivo Word bonito»* obliga al modelo a improvisar. Un resultado riguroso requiere un enfoque de especificación formal.

```mermaid
flowchart LR
    A["1. Audiencia y propósito"] --> B["2. Estructura taxativa de secciones"]
    B --> C["3. Componentes internos (Tablas/Listas)"]
    C --> D["4. Reglas tipográficas y de estilo"]
    D --> E["Documento DOCX listo para producción"]
```

### Cinco componentes indispensables del prompt

1. **Propósito y público objetivo:** A quién se dirige el documento (comité directivo, soporte técnico, clientes B2B).
2. **Esquema de secciones obligatorias:** Define la secuencia: *Portada $\rightarrow$ Resumen ejecutivo $\rightarrow$ 4 fases operativas $\rightarrow$ Matriz de riesgos $\rightarrow$ Presupuesto*.
3. **Elementos estructurados:** Qué contenido debe ir en viñetas, cuál en pasos numerados y cuál en tablas comparativas.
4. **Pautas de estilo visual:** Tipografía preferida (*Calibri*, *Aptos*, *Inter*), interlineado 1.15 y color de acento para los encabezados.
5. **Límites de edición (para archivos existentes):** Indicación explícita de qué cláusulas legales o tablas numéricas deben permanecer intactas.

### Comparativa de prompts: genérico vs. profesional

:::tabs
@tab Prompt Genérico
```text
Haz un procedimiento de ventas en Word.
```
*Resultado:* Texto continuo sin estilos semánticos, fuentes aleatorias, ausencia de portada y tiempo perdido en ajustes manuales.
@tab Especificación Profesional
```text
Crea un procedimiento operativo estándar interno en formato DOCX: «Gestión de Oportunidades en CRM».
Audiencia: Nuevos ejecutivos de ventas B2B.
Estructura del documento:
1. Portada con título del documento, versión y metadatos de autor.
2. Índice interactivo basado en estilos de Título 1 y 2.
3. Proceso paso a paso de cualificación de leads (lista numerada de acciones).
4. Matriz de datos: «Estado de la oportunidad | Campos obligatorios | SLA / Límite | Escalado a».
5. Tabla de resolución de 5 incidencias habituales en el embudo.
6. Lista de comprobación previa a la llamada con casillas verificables.
Estilo: Formato corporativo sobrio, fuente Aptos 11pt, márgenes de 2 cm, encabezados de tabla con fondo azul marino (#1E40AF).
```
:::

---

## 4. Cuándo se necesita XLSX: datos dinámicos, hojas múltiples y fórmulas

XLSX es la elección acertada cuando el archivo debe operar como un modelo de cálculo activo en lugar de una foto fija de valores numéricos.

### Indicadores claros de que requieres XLSX:

- Los datos demandan actualizaciones periódicas y recálculo automático de subtotales.
- Es necesario interconectar orígenes mediante fórmulas (`SUM`, `AVERAGE`, `VLOOKUP`, `XLOOKUP`).
- El proyecto abarca diferentes áreas lógicas (ej. pestañas independientes para Ingresos, Gastos y Resumen Ejecutivo).
- Los usuarios finales aplicarán filtros por responsable, estado o fecha.
- Se precisa formato condicional para alertar visualmente sobre desviaciones presupuestarias o fechas límite vencidas.

```mermaid
flowchart TD
    subgraph Excel_Workbook["Estructura del libro XLSX"]
        S1["Hoja 1: 'Datos en bruto'<br><i>(Registro normalizado de operaciones)</i>"]
        S2["Hoja 2: 'Cálculos'<br><i>(Fórmulas dinámicas, márgenes e impuestos)</i>"]
        S3["Hoja 3: 'Dashboard'<br><i>(KPIs agregados, tarjetas de resumen y gráficos)</i>"]
    end
    S1 -->|Referenciado por fórmulas| S2
    S2 -->|Consolida métricas en| S3
```

---

## 5. XLSX frente a CSV: diferencias arquitectónicas clave

Aunque ambos formatos representan tablas, confundirlos conduce a errores operativos y pérdidas de datos.

| Característica | CSV (Comma-Separated Values) | XLSX (Microsoft Excel OpenXML) |
| :--- | :--- | :--- |
| **Naturaleza del archivo** | Texto plano con delimitadores de columna | Paquete comprimido (ZIP) con esquemas XML y recursos |
| **Estructura de hojas** | Estrictamente 1 sola cuadrícula plana | Ilimitadas hojas interactivas con nombres personalizados |
| **Motor de cálculo** | Ninguno (solo almacena cadenas de texto) | Soporte completo del motor de cálculo de hojas de cálculo |
| **Estilos visuales** | Inexistentes (sin color, fuentes ni anchos) | Fuentes, bordes, rellenos, formatos numéricos y divisas |
| **Validación y filtros** | Inexistentes | Filtros automáticos, desplegables, rangos protegidos |
| **Tamaño en disco** | Mínimo (óptimo para millones de filas) | Moderado debido a los metadatos y esquemas XML |

> [!WARNING]
> Guardar un libro de Excel con múltiples hojas y fórmulas como archivo CSV eliminará de forma irreversible todas las pestañas secundarias, gráficos y dependencias matemáticas.

---

## 6. Ingeniería de fórmulas, tipos de datos y formato condicional en XLSX

La diferencia entre una hoja básica y un libro profesional reside en la separación estricta entre datos de entrada y lógica de cálculo.

### Fórmulas en lugar de números estáticos

Exige siempre que las celdas de agregación contengan fórmulas funcionales:
- ❌ **Inadecuado:** El modelo calcula el total mentalmente e inserta el valor estático `45200` en la celda `D20`. (Al cambiar los precios base, el total queda desactualizado).
-  **Práctica Profesional:** El modelo inserta la fórmula `=SUM(D2:D19)` directamente en la celda `D20`. (El documento conserva su interactividad permanentemente).

### Tipado estricto de columnas

Cada columna debe contar con un formato definido:
- **Fechas:** Formato estándar `YYYY-MM-DD` o `DD/MM/YYYY` (para que Excel ordene cronológicamente y no por orden alfabético).
- **Importes monetarios:** Formato con separadores de miles y símbolo de divisa (`12.500,00 €` o `$12,500.00`).
- **Porcentajes:** Formato nativo de porcentaje (`15,4%`), nunca cadenas de texto como `"15%"`.

### Formato condicional dinámico

Las alertas visuales guían la toma de decisiones sin requerir una revisión línea por línea:
- Gradiente verde: Cumplimiento del plan $\ge 100\%$.
- Resalte en rojo: Gasto superior al asignado o hito vencido.

---

## 7. Elaboración de especificaciones precisas para hojas de cálculo XLSX

Para obtener un libro interactivo y funcional desde el primer segundo, organiza tu solicitud en cinco dimensiones técnicas.

```mermaid
flowchart TD
    A["1. Arquitectura de pestañas"] --> B["2. Inventario de columnas y tipos de datos"]
    B --> C["3. Fórmulas matemáticas y relaciones"]
    C --> D["4. Filtros automáticos, ordenación y listas"]
    D --> E["5. Cuadros de mando y gráficos visuales"]
```

### Prompt de referencia para un libro de cálculo

```text
Crea un libro XLSX completo y basado en fórmulas para el Presupuesto Anual de un Proyecto Tecnológico (Ejercicio 2027).

Estructura de hojas:
1. «Parámetros»: Tarifas horarias por rol, coeficientes de impuestos y tipos de cambio.
2. «Gastos»: Registro pormenorizado (Categoría, Recurso, Tarifa, Horas imputadas, Importe total).
3. «Resumen»: Desglose mensual con importes previstos vs. reales, desviaciones y % de ejecución.

Requisitos de cálculo:
- El importe total en «Gastos» debe multiplicar las Horas por la Tarifa extraída de «Parámetros».
- En «Resumen», utiliza fórmulas SUMIF/SUMIFS para consolidar los gastos por categoría dinámicamente.
- Calcula la desviación mediante la fórmula: =(Real - Previsto) / Previsto.

Estilo y presentación:
- Inmoviliza la fila de encabezados en todas las hojas.
- Habilita autofiltros en la hoja «Gastos».
- Asigna formato de moneda EUR (€#,##0.00) a todas las columnas financieras.
- En «Resumen», incorpora un gráfico de columnas agrupadas: «Gasto Previsto vs. Real por Mes».
```

---

## 8. Trabajo con plantillas: creación desde cero vs. actualización de archivos existentes

Generar un documento nuevo es una operación técnica muy distinta a actualizar una plantilla corporativa consolidada.

```mermaid
flowchart LR
    subgraph From_Scratch["Creación desde cero"]
        A1["Descripción arquitectónica"] --> B1["Diseño de la cuadrícula"] --> C1["Ensamblado del archivo nuevo"]
    end
    subgraph By_Template["Actualización sobre plantilla"]
        A2["Carga del archivo base"] --> B2["Inspección de fórmulas"] --> C2["Inyección precisa de celdas"]
    end
```

### Protocolo de actualización segura

1. **Definir zonas protegidas:** Indica taxativamente al modelo: *«No alteres los nombres de las pestañas, los tamaños tipográficos ni las fórmulas de las columnas F a H»*.
2. **Especificar vectores de inserción:** Por ejemplo: *«Inserta las nuevas filas de transacciones al final de la tabla, justo antes de la fila de 'Total', y ajusta los rangos de las fórmulas SUM en consecuencia»*.
3. **Preservar componentes avanzados:** Si el archivo original incluye macros VBA o tablas dinámicas conectadas, cerciórate de que el proceso no degrade dichos elementos binarios.

---

## 9. Automatización programática: cómo la IA y el backend generan DOCX y XLSX

En despliegues de agentes en producción (con Claude Code, LangChain o arquitecturas de backend propias), los archivos se compilan mediante librerías de código maduras.

:::tabs
@tab Python (python-docx)
```python
from docx import Document
from docx.shared import Inches, Pt, RGBColor
from docx.enum.text import WD_ALIGN_PARAGRAPH

doc = Document()

# Configuración de estilos del documento
title = doc.add_heading("Informe de Rendimiento del Equipo", level=0)
title.alignment = WD_ALIGN_PARAGRAPH.CENTER

p = doc.add_paragraph("Documento generado automáticamente a partir de métricas del tercer trimestre.")
p.runs[0].font.size = Pt(11)

# Inserción de tabla estructurada
table = doc.add_table(rows=1, cols=3)
table.style = 'Light Shading Accent 1'
hdr_cells = table.rows[0].cells
hdr_cells[0].text = 'Sprint'
hdr_cells[1].text = 'Tareas Cerradas'
hdr_cells[2].text = 'Rendimiento'

data = [("Sprint 41", "34", "94%"), ("Sprint 42", "41", "98%")]
for sprint, count, eff in data:
    row_cells = table.add_row().cells
    row_cells[0].text = sprint
    row_cells[1].text = count
    row_cells[2].text = eff

doc.save("informe_equipo.docx")
```
@tab Python (openpyxl)
```python
from openpyxl import Workbook
from openpyxl.styles import Font, PatternFill, Alignment

wb = Workbook()
ws = wb.active
ws.title = "Presupuesto"

# Creación y diseño de encabezados
headers = ["Categoría", "Previsto ($)", "Real ($)", "Desviación ($)"]
ws.append(headers)

header_fill = PatternFill(start_color="1E40AF", end_color="1E40AF", fill_type="solid")
header_font = Font(color="FFFFFF", bold=True)

for col_num in range(1, 5):
    cell = ws.cell(row=1, column=col_num)
    cell.fill = header_fill
    cell.font = header_font
    cell.alignment = Alignment(horizontal="center")

# Filas de datos con fórmulas activas
rows = [
    ["Infraestructura Cloud", 2500, 2350],
    ["Campañas de Marketing", 5000, 5600],
    ["Suscripciones SaaS", 800, 800],
]

for row_idx, data in enumerate(rows, start=2):
    ws.append([data[0], data[1], data[2], f"=C{row_idx}-B{row_idx}"])

# Fila de totales agregados
ws.append(["Total", "=SUM(B2:B4)", "=SUM(C2:C4)", "=SUM(D2:D4)"])
ws.cell(row=5, column=1).font = Font(bold=True)

wb.save("presupuesto_proyecto.xlsx")
```
@tab TypeScript (exceljs)
```typescript
import ExcelJS from 'exceljs';

async function generateSpreadsheet() {
  const workbook = new ExcelJS.Workbook();
  const sheet = workbook.addWorksheet('Sales Data');

  sheet.columns = [
    { header: 'Producto', key: 'product', width: 25 },
    { header: 'Unidades', key: 'qty', width: 15 },
    { header: 'Precio Unitario', key: 'price', width: 15 },
    { header: 'Total', key: 'total', width: 18 }
  ];

  sheet.addRow({ product: 'Licencia Cloud Gateway', qty: 5, price: 1200, total: { formula: 'B2*C2' } });
  sheet.addRow({ product: 'SLA Soporte Enterprise', qty: 1, price: 3500, total: { formula: 'B3*C3' } });

  await workbook.xlsx.writeFile('ventas_corporativas.xlsx');
}
```
:::

---

## 10. Protocolo de verificación y validación de archivos generados

No distribuyas archivos generados automáticamente a clientes o directivos sin efectuar antes un control de calidad sistemático.

### Lista de verificación para DOCX

- [ ] **Estructura semántica:** El documento utiliza los estilos nativos de Word (*Título 1*, *Título 2*) en lugar de texto en negrita con tamaño aumentado.
- [ ] **Comportamiento de tablas:** Las tablas no superan los márgenes de impresión y el texto interior no aparece cortado.
- [ ] **Títulos huérfanos:** Se comprobó que ningún encabezado de sección queda aislado al final de una página sin párrafos asociados.
- [ ] **Metadatos auxiliares:** La numeración de páginas y el índice se actualizan limpiamente sin errores.

### Lista de verificación para XLSX

- [ ] **Fórmulas dinámicas:** Las celdas de totales contienen fórmulas reales (`=SUM()`) y no valores numéricos fijos.
- [ ] **Cobertura de rangos:** Los rangos de agregación engloban todas las filas introducidas, incluida la última.
- [ ] **Prueba de recálculo:** La modificación de un valor base actualiza en cascada los totales dependientes.
- [ ] **Limpieza de formatos:** Las celdas monetarias y porcentuales se visualizan correctamente, sin errores `#VALUE!`, `#REF!` ni desbordamientos `###`.

---

## 11. Biblioteca de master prompts y lista de verificación para producción

Aplica estos esquemas contrastados como punto de partida en tus automatizaciones documentales.

### Master prompt para procedimientos y memorias en DOCX

```markdown
Actúa como redactor técnico principal. Genera un documento corporativo formal en formato DOCX.

Título: [Indica el título, ej.: Procedimiento de Seguridad para Puestos de Trabajo Remotos]
Audiencia: [Indica la audiencia]

Estructura requerida:
1. Portada formal (Título, versión, autoría, fecha).
2. Resumen ejecutivo y ámbito de aplicación.
3. Protocolos normativos (relación numerada de directrices).
4. Matriz consolidada: «Amenaza | Nivel de riesgo | Medida preventiva | Responsable».
5. Procedimiento de escalado y gestión de incidentes.
6. Lista de comprobación de autoevaluación para el empleado.

Pautas de maquetación:
- Tipografía del cuerpo: Aptos o Calibri 11pt, interlineado 1.15.
- Estilos de encabezado: Título 1 (18pt, Negrita), Título 2 (14pt, Seminegrita).
- Formato de tablas: Cabecera azul oscuro con texto blanco, sombreado gris claro alterno en filas.
- Inserta un índice interactivo tras la portada.
```

### Master prompt para modelos financieros en XLSX

```markdown
Actúa como analista financiero senior. Construye un libro interactivo XLSX para un plan de negocio plurianual.

Estructura de hojas:
1. «Supuestos»: Parámetros de partida (coste de ventas, precios, ratios de conversión, impuestos).
2. «Ventas»: Previsiones mensuales de transacciones y facturación bruta calculadas con fórmulas.
3. «OPEX»: Relación clasificada de gastos operativos (infraestructura, marketing, nóminas).
4. «Cuenta P&L»: Estado mensual de pérdidas y ganancias (Ingresos, Gastos, EBITDA, Beneficio Neto).

Requisitos de cálculo:
- Queda terminantemente prohibido introducir números fijos en «Cuenta P&L»; cada celda debe vincularse mediante fórmulas a «Ventas» y «OPEX».
- Configura formato de divisa EUR (€#,##0.00) en todas las celdas financieras.
- Aplica formato condicional al margen neto: Verde para >=25%, Rojo para <10%.
- Genera un gráfico combinado en «Cuenta P&L»: barras para facturación, línea para beneficio neto.
```

### Lista final de decisión de formato

- [ ] Borradores, lluvia de ideas o debate sobre contenidos $\rightarrow$ **Chat / Markdown**.
- [ ] Registros normalizados para volcado en bases de datos o scripts $\rightarrow$ **CSV**.
- [ ] Documento formal para lectura humana, firma o impresión $\rightarrow$ **DOCX**.
- [ ] Cuaderno de cálculo con fórmulas interconectadas y pestañas analíticas $\rightarrow$ **XLSX**.