> ## Documentation Index
> Fetch the complete documentation index at: https://docs.doconda.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Generar un Excel con fórmulas desde un LLM

> Cómo generar un Excel (.xlsx) con fórmulas de verdad desde un LLM, sin valores copiados ni errores como #REF! o #DIV/0!.

Para generar un Excel con fórmulas desde un LLM, describe la hoja en una frase y pide a Doconda `format="xlsx"`.
Recibes un `.xlsx` con fórmulas de verdad (no números copiados), los supuestos en sus propias celdas y todas las
fórmulas recalculadas y comprobadas antes de entregarlo, más su PDF.

## El problema en la práctica

* El modelo suele escribir el resultado ya calculado: la hoja se ve bien, pero no se actualiza al cambiar un dato.
* Las fórmulas que escribe pueden apuntar a celdas equivocadas y acabar en `#REF!` o `#DIV/0!`.
* Al crear el archivo con código, las fórmulas no se calculan hasta que alguien lo abre, así que los errores no se ven antes.
* Funciones nuevas como `XLOOKUP` o `FILTER` no funcionan en todas las versiones de Excel.

## La solución con Doconda

<CodeGroup>
  ```python Python theme={"theme":{"light":"github-light","dark":"github-dark-dimmed"}}
  from pathlib import Path
  from doconda import Doconda

  doconda = Doconda()  # lee la key de DOCONDA_API_KEY
  doc = doconda.documents.create(
      format="xlsx",
      prompt="Previsión de ingresos a 12 meses: 1.000 clientes al inicio, crecimiento del 5 % mensual y 20 € por cliente",
  )
  Path("prevision.xlsx").write_bytes(doconda.documents.download(doc["id"], "xlsx"))
  ```

  ```ts TypeScript theme={"theme":{"light":"github-light","dark":"github-dark-dimmed"}}
  import { writeFile } from "node:fs/promises"
  import { Doconda } from "@doconda/sdk"

  const doconda = new Doconda()
  const doc = await doconda.documents.create({
    format: "xlsx",
    prompt: "Previsión de ingresos a 12 meses: 1.000 clientes al inicio, crecimiento del 5 % mensual y 20 € por cliente",
  })
  await writeFile("prevision.xlsx", await doconda.documents.download(doc.id, "xlsx"))
  ```
</CodeGroup>

Si tus datos están en un fichero, súbelo con `doconda.files.upload("ventas.xlsx")` y pásalo en `sources`.

## Qué recibes

* Un `.xlsx` con fórmulas: cambias un supuesto y la hoja se recalcula. También su PDF.
* `status`: `ready`, `ready_with_warnings`, `needs_review` o `failed` (no se cobra).
* Un informe (`documents.report(id)`). Las cifras que no salen de tu petición ni de tus fuentes se quitan o se marcan
  para que las revises.

## Preguntas frecuentes

<AccordionGroup>
  <Accordion title="¿Cómo hago que ChatGPT cree un Excel con fórmulas y no con valores?">
    El modelo por sí solo devuelve texto o valores calculados. Con `documents.create(format="xlsx", prompt=...)`
    Doconda construye el archivo con fórmulas y comprueba que ninguna da error antes de entregarlo.
  </Accordion>

  <Accordion title="¿Cómo evito errores #REF! y #DIV/0! en un Excel generado por IA?">
    Doconda recalcula todas las fórmulas hasta que no queda ningún error. Para un Excel que ya tienes, revísalo con
    `operation="review"`: las fórmulas con error y las referencias rotas salen en el informe.
  </Accordion>

  <Accordion title="¿Puedo revisar un Excel que ya tengo?">
    Sí. Súbelo con `files.upload` y llama a `documents.create(operation="review", file=...)`. Detecta, entre otros,
    números guardados como texto y hojas demasiado anchas para imprimir. Ver [Revisar](/guides/review).
  </Accordion>
</AccordionGroup>

## Sigue leyendo

* [Crear](/guides/create): formatos, fuentes y niveles de calidad.
* [Revisar](/guides/review): la lista de problemas que se detectan en Excel.
* [SDK de Python](/sdk/python) y [SDK de TypeScript](/sdk/introduction).
* [Doconda en tu agente](/agents/introduction).
* [Ejemplos en GitHub](https://github.com/B-C-Software/doconda-examples).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.