Usar Python en Excel: guía completa paso a paso

  • Python en Excel permite escribir y ejecutar código Python directamente en celdas, con cálculo en la nube de Microsoft y acceso a librerías como pandas o Matplotlib.
  • La integración se combina con Power Query, distintos modos de recálculo y tipos de salida (valores de Excel u objetos Python) para análisis avanzados y modelos complejos.
  • Convive con librerías clásicas como openpyxl, pandas o xlwings y con herramientas de automatización impulsadas por IA, ofreciendo varios caminos para automatizar Excel.

python en excel

La combinación de Python y Excel se ha convertido en uno de los temas más interesantes para quienes trabajan a diario con hojas de cálculo y necesitan exprimir al máximo sus datos. Durante años, la única forma de unir ambos mundos pasaba por librerías externas, APIs y algo de paciencia. Ahora Microsoft ha movido ficha e integra Python directamente en Excel, cambiando por completo las reglas del juego.

En esta guía vas a ver cómo usar Python en Excel, qué ofrece exactamente la integración oficial de Microsoft, cómo se habilita, qué puedes hacer con ella y qué limitaciones tiene a día de hoy. Además, también repasaremos las principales alternativas clásicas basadas en librerías como openpyxl, pandas o xlwings. E incluso herramientas impulsadas por IA que permiten automatizar Excel sin escribir ni una línea de código.

Qué es exactamente Python en Excel

Cuando hablamos de Python en Excel nos referimos a la funcionalidad oficial que Microsoft ha incorporado en Excel y que permite escribir código Python directamente en las celdas, igual que si estuvieras introduciendo una fórmula. Ese código se envía a la nube de Microsoft, se ejecuta allí con una versión estándar de Python y los resultados vuelven a tu libro de trabajo como valores, tablas, gráficos u objetos de Python.

Para este nuevo entorno, Microsoft se apoya en Anaconda, que proporciona un conjunto de librerías de Python muy utilizado en ciencia de datos y análisis estadístico. El objetivo es realizar desde limpiezas complejas de datos hasta modelos estadísticos avanzados sin salir de Excel.

Lo más llamativo es que no necesitas instalar Python localmente ni gestionar entornos virtuales en tu equipo. El motor corre en la nube, con una configuración estándar y segura, completamente gestionada por Microsoft. Esto simplifica mucho la vida a usuarios de negocio que no quieren pelearse con instalaciones y dependencias.

Este enfoque hace posible que puedas combinar el ecosistema clásico de Excel (tablas, fórmulas, tablas dinámicas, gráficos) con toda la potencia del ecosistema Python (DataFrames, visualizaciones avanzadas, modelos estadísticos, automatizaciones, etc.). Todo dentro del mismo libro.

python excel

Disponibilidad y plataformas donde puedes usarlo

La integración de Python en Excel se está desplegando de forma gradual. A día de hoy, no está disponible en todas las plataformas ni para todos los usuarios. Microsoft ha dejado claro que el objetivo es integrarlo dentro de las suscripciones de Microsoft 365, pero el ritmo de despliegue es progresivo.

Actualmente, la característica está disponible en Excel para Windows, en Excel en la Web y en Excel para Mac, siempre que tu suscripción y tu canal de actualización sean compatibles. Sin embargo, hay plataformas donde, aunque puedas abrir libros que contengan celdas Python, no se podrán recalcular.  Y verás errores si intentas hacerlo.

Python en Excel no está disponible en Excel para iPad, Excel para iPhone ni Excel para Android. En estos dispositivos, los libros que incluyen celdas con código Python se pueden visualizar, pero si se inicia un recálculo, las celdas Python pueden devolver errores. Esto es porque el motor de ejecución no está soportado.

En cuanto al estado del producto, Python en Excel empezó como una versión preliminar pública, accesible para usuarios del Programa Insider de Microsoft 365 a través del canal Beta. Durante esta fase, la funcionalidad ha ido cambiando y ampliándose en función de los comentarios de la comunidad, con la idea de consolidarse dentro de la oferta estándar de Microsoft 365 en el futuro cercano.

Cómo habilitar y empezar a usar Python en Excel

Si cuentas con una suscripción a Microsoft 365 apta y la versión correcta de Excel, activar Python en Excel es bastante sencillo, aunque no siempre evidente la primera vez que lo intentas. Lo ideal es empezar desde un libro en blanco para familiarizarte con el flujo de trabajo antes de tocar archivos críticos.

El primer camino pasa por la cinta de opciones:

  • Entra en la pestaña “Fórmulas” y pulsa en el botón “Insertar Python”. Con ese gesto le indicas a Excel que quieres convertir la celda seleccionada en una celda de tipo Python, en la que podrás escribir literalmente código del lenguaje en lugar de una fórmula tradicional.
  • Usa la función =PY. Basta con escribir =PY en una celda, dejar que aparezca en el menú de autocompletar y seleccionarla con las teclas de flecha y Tab, o bien escribir directamente =PY(. A partir de ese paréntesis, la celda acepta código Python que se enviará a la nube para ejecutar los cálculos.

Una vez que la celda se convierte en celda Python, verás un icono “PY” dentro de la propia celda, y ese mismo icono también se muestra en la barra de fórmulas cuando la celda está seleccionada. Es una forma rápida de identificar qué celdas contienen código Python frente a las que solo tienen fórmulas de Excel.

python excel

Combinar Python con celdas y rangos de Excel

Una de las claves de esta integración es que Python puede trabajar directamente con los datos que ya tienes en la hoja. Sin tener que exportarlos ni duplicarlos. Para ello, Python en Excel utiliza una función personalizada llamada xl(), que actúa como puente entre los objetos de Excel y el código Python.

Para hacer referencia a un rango desde una celda Python, puedes entrar en modo edición en esa celda y seleccionar con el ratón la celda o el rango que quieres usar. Excel insertará automáticamente en tu código una llamada a xl() con la dirección correspondiente del rango o la tabla que has marcado. Es decir, te ahorras escribirla a mano.

Si prefieres escribir la referencia directamente, también puedes hacerlo. Por ejemplo, para trabajar con la celda A1 desde Python, bastaría con usar xl(«A1»), mientras que para un rango como B1:C4 escribirías xl(«B1:C4»). En el caso de tablas con nombre, la sintaxis se hace un poco más interesante.

Imagina que tienes una tabla con encabezados llamada MyTable. Si quieres que Python reciba la tabla completa, incluyendo cabeceras, puedes utilizar xl(«MyTable», headers=True). El especificador indica que se debe analizar toda la tabla, y el argumento headers=True se asegura de que los encabezados se procesen correctamente en el DataFrame o estructura que se genere.

Cómo usar la barra de fórmulas con código Python

Cuando empiezas a escribir código algo más largo, la barra de fórmulas de Excel se convierte en tu aliada. No se trata solo de una línea donde meter una fórmula rápida, sino de un pequeño editor que, con Python en Excel, gana bastante importancia.

Puedes ampliar la barra de fórmulas haciendo clic en la flecha hacia abajo situada a su derecha. O bien usando el atajo de teclado Ctrl+Mayús+U. Al hacerlo, verás varias líneas a la vez, lo cual es muy útil cuando tu código Python no cabe en una sola línea y quieres mantenerlo legible.

Dentro de la barra de fórmulas puedes usar la tecla Intro para crear nuevas líneas, igual que harías en un editor de código, en lugar de aceptar el contenido en la celda. Esto permite escribir bloques de código mucho más estructurados, con saltos de línea, comentarios y lógica un poco más compleja.

Este comportamiento hace que la experiencia sea más parecida a trabajar en un IDE ligero, sin salir de Excel. Aunque no tendrás todas las opciones de un editor profesional, sí dispones de un entorno suficientemente cómodo para scripts de análisis, visualizaciones y pequeños modelos.

Tipos de salida de una celda Python

Python en Excel no se limita a volcar números planos en las celdas. Tienes bastante control sobre cómo se devuelven los resultados de tus scripts. Desde la propia barra de fórmulas puedes elegir el tipo de salida, algo que influye tanto en lo que ves en la celda como en cómo puedes reutilizar ese resultado dentro del libro.

En muchos casos, te interesará convertir el resultado en valores de Excel directamente, por ejemplo, cuando el script produce una tabla que quieres usar como fuente para tablas dinámicas o gráficos clásicos de Excel. En ese caso, el contenido de la celda Python se traduce a celdas estándar con datos nativos de Excel.

Otra opción es devolver el resultado como un objeto Python. Cuando eliges esta modalidad, la celda muestra un icono de tarjeta en lugar de un valor simple. Al hacer clic en dicho icono, se abre una tarjeta donde puedes ver una vista previa del objeto. Puede ser un DataFrame, una lista, una figura de Matplotlib, etc.

Esta tarjeta es especialmente útil cuando estás manejando objetos grandes o complejos. Y es que no es práctico meter todo en una sola celda. Además, te permite conservar información adicional asociada al objeto . Información que se perdería si lo convirtieras directamente a datos planos de Excel.

Entre los tipos de datos más interesantes que puedes devolver como objeto Python están los DataFrames. Estos objetos se integran muy bien con el flujo de trabajo de análisis, ya que permiten manipular, filtrar y transformar datos con un nivel de detalle que a veces cuesta conseguir solo con fórmulas de Excel.

Importar datos externos para analizarlos con Python en Excel

Para que Python en Excel pueda hacer su magia, los datos deben llegar primero a la hoja de cálculo o a Power Query. A diferencia de un script de Python tradicional que puede leer directamente desde archivos, APIs u otras fuentes, aquí el flujo se basa en que Excel actúa como puerta de entrada a los datos.

La forma recomendada de traer información desde fuentes externas es utilizar la característica “Obtener y transformar”. Lo que se conoce también como Power Query. Desde ahí puedes conectarte a archivos CSV, bases de datos, servicios online y un largo etcétera. Y luego volcar el resultado transformado a una hoja.

Una vez que los datos están en la hoja o en una consulta de Power Query, Python puede acceder a ellos mediante xl() y trabajar con las tablas resultantes. De esta forma, combinas las capacidades de limpieza y transformación inicial de Power Query con el procesamiento avanzado de Python.

Microsoft documenta en detalle cómo usar Power Query para importar datos para Python en Excel. Precisamente porque este tándem se ha convertido en uno de los pilares de la nueva forma de trabajar con datos dentro de Excel, especialmente en entornos empresariales donde las fuentes son diversas.

Orden de cálculo de las celdas Python

En un script tradicional de Python, las instrucciones se ejecutan de arriba abajo, siguiendo el orden en que las has escrito. En una hoja de cálculo, sin embargo, el motor de cálculo funciona por celdas y rangos, lo que obliga a establecer unas reglas específicas para las celdas Python.

Dentro de una misma celda Python, el código se evalúa de forma secuencial, como esperarías en cualquier archivo .py: la línea 1 se ejecuta antes que la 2, la 2 antes que la 3, y así sucesivamente. Cada línea tiene una dependencia implícita de la anterior. Ello afecta a la definición y uso de variables dentro de esa celda.

Pero si miramos la hoja en su conjunto, Excel evalúa las celdas Python siguiendo un orden principal por filas: recorre cada fila de izquierda a derecha (desde la columna A hasta la XFD) y después pasa a la fila siguiente. Esto quiere decir que una celda Python situada en la fila 5 no se calculará antes que otra ubicada en la fila 4, aunque esté más a la izquierda.

Este orden es muy importante cuando defines variables en celdas y las reutilizas en otras, porque necesitas que la celda que las declara se calcule antes que aquella que las referencia. De lo contrario, te encontrarás con errores o resultados inesperados, del mismo modo que ocurre con las dependencias entre fórmulas de Excel.

En la práctica, esto significa que conviene estructurar tu hoja de forma lógica. De esta manera las celdas que establecen valores base o cálculos previos estén situadas antes (en la parte superior o más a la izquierda) que las que se apoyan en ellas. Así se mantiene la coherencia del flujo de cálculo.

Recálculo y modos de cálculo con Python en Excel

Cada vez que cambias un valor del que dependen una o varias celdas Python, Excel vuelve a calcular todas las fórmulas de Python de forma secuencial, respetando el orden de cálculo que acabas de ver. Esto puede ser muy cómodo, pero también puede tener impacto en el rendimiento si tu libro es pesado.

Para tener más control, Excel ofrece varios modos de cálculo, entre ellos el modo de cálculo parcial y el modo de cálculo manual. Estos modos suspenden el recálculo automático, tanto para las tablas de datos como para las celdas Python, de forma que solo se recalcula cuando tú lo decides.

Si estás en plena fase de desarrollo de tu modelo, desactivar el recálculo automático puede mejorar notablemente el rendimiento. Especialmente cuando tu libro contiene muchos scripts Python o consultas pesadas. Eso sí, tendrás que acordarte de volver a lanzar el cálculo para asegurarte de que los resultados reflejan los cambios más recientes.

Para cambiar el modo de cálculo, basta con ir a la cinta, abrir la pestaña “Fórmulas” y acceder a “Opciones de cálculo”. Ahí podrás seleccionar si quieres cálculo automático, parcial o manual. Tanto para las fórmulas estándar como para las celdas Python.

Cuando estás en modo parcial o manual, puedes forzar el recálculo de tres maneras:

  • Utilizando la tecla F9.
  • Yendo a Fórmulas > Calcular ahora en la cinta.
  • Haciendo clic en el símbolo de error que aparece junto a una celda con valor obsoleto (mostrado con formato de tachado) y eligiendo la opción “Calcular ahora” en el menú desplegable.

python excel

Licencia complementaria y capacidades premium de Python en Excel

Además de la funcionalidad base integrada en ciertas suscripciones de Microsoft 365, existe un complemento de licencia específico de Python en Excel que da acceso a características adicionales, orientadas sobre todo a entornos donde el rendimiento y la capacidad de cálculo son críticos.

Esta licencia complementaria incluye, entre otros beneficios, cálculo premium. Esto se traduce en tiempos de ejecución más rápidos para las fórmulas Python. También en una mejor respuesta en libros que combinan muchas celdas Python o grandes volúmenes de datos.

Otro punto importante es que amplía las opciones de modo de cálculo. Eso da un control todavía más fino sobre cuándo y con qué frecuencia se recalculan las fórmulas Python. Para usuarios avanzados y equipos de datos, esto puede marcar la diferencia a la hora de trabajar con modelos complejos.

Si quieres saber exactamente qué se incluye en tu suscripción y qué añade este complemento, Microsoft mantiene documentación específica sobre qué entra en Microsoft 365 y en la licencia adicional de Python en Excel. Con un desglose detallado para empresas y educación.

Ejecución en la nube, seguridad y condiciones de uso

Todos los cálculos de Python en Excel se ejecutan en la Microsoft Cloud, utilizando una versión estándar del lenguaje Python y un conjunto de librerías proporcionado por Anaconda. Esta arquitectura en la nube tiene implicaciones directas en seguridad, rendimiento y mantenimiento.

Desde el punto de vista de seguridad, Microsoft aplica sus controles habituales de protección de datos y cumplimiento normativo, incluyendo aspectos relacionados con el RGPD y el tratamiento de datos personales.

Si tienes una suscripción de Microsoft 365 Familia o Personal, el uso de esta característica se rige por el Contrato de servicios de Microsoft. En entornos de negocio y educación, en cambio, entran en juego los Términos de producto, que especifican de forma más granular qué se permite y bajo qué condiciones.

Un detalle clave es que no necesitas tener Python instalado en tu equipo para aprovechar Python en Excel. Y, aunque dispongas de una instalación local muy personalizada, estas configuraciones no se trasladan al entorno de cálculo en la nube, que utiliza su propia distribución estándar y aislada.

Copilot en Excel con Python: IA al servicio del análisis

La integración de Python en Excel no viene sola: se complementa con Copilot en Excel, el asistente de inteligencia artificial de Microsoft que ahora también es capaz de trabajar con código Python. Esta combinación está pensada precisamente para usuarios que, sin ser expertos en programación, quieren ir un paso más allá en sus análisis.

Con Copilot puedes formular peticiones en lenguaje natural y dejar que el sistema se encargue de generar el código Python necesario, ejecutar los cálculos y plasmar el resultado en la hoja de cálculo.

Este enfoque ayuda a bajar la barrera de entrada tanto para Python como para las funciones avanzadas de Excel, porque convierte tareas que antes requerían bastante conocimiento técnico en algo mucho más conversacional y guiado.

Para usuarios que ya dominan Python, Copilot también puede servir como apoyo para probar variantes de análisis, explorar patrones o construir rápidamente prototipos de modelos sin dedicar tanto tiempo a la escritura manual de código.

python excel

Por qué usar Python en Excel mejora tu día a día

La llegada de Python a Excel supone un salto importante para cualquiera que trabaje con datos. La posibilidad de manipular y explorar datos con pandas, crear gráficos con Matplotlib o Seaborn, o montar modelos estadísticos con Statsmodels directamente en la hoja cambia bastante el panorama.

Con esta integración puedes aprovechar todas esas librerías sin instalar nada extra en el equipo, integrando el resultado de tus scripts con las fórmulas clásicas de Excel, tablas dinámicas, segmentaciones y gráficos nativos. Todo en el mismo entorno que tus compañeros ya conocen.

También es muy interesante la capacidad de crear automatizaciones directamente en el libro. Desde limpiezas periódicas de datos hasta generación de informes, pasando por la construcción de paneles combinando gráficos interactivos de Excel con visualizaciones producidas por Python.

La seguridad de datos, que siempre ha sido una preocupación en entornos empresariales, se mantiene bajo el paraguas de Microsoft 365, lo que facilita compartir libros, scripts y resultados a través de Teams, Outlook o SharePoint sin tener que salir del ecosistema corporativo.

Automatizar Excel: código frente a herramientas impulsadas por IA

En paralelo al enfoque nativo de Microsoft, ha ido ganando fuerza otra forma de trabajar. Las herramientas de automatización impulsadas por IA que permiten manipular hojas de cálculo mediante lenguaje natural. Este tipo de soluciones se sitúan a medio camino entre los scripts de Python clásicos y asistentes como Copilot.

El enfoque más tradicional sigue siendo el camino programático, usando librerías como openpyxl para automatizar la lectura, escritura, formato y creación de gráficos. Este método es ideal para desarrolladores que quieren integrar Excel en canalizaciones de datos complejas. O en aplicaciones más grandes, controlando cada detalle de las celdas y el flujo de trabajo.

Por otro lado, empiezan a popularizarse herramientas de IA tipo “agente de Excel” (como Excelmatic en algunos ejemplos), donde simplemente subes un archivo, describes en lenguaje sencillo lo que quieres (limpiar datos, crear un gráfico, añadir fórmulas) y recibes el libro ya modificado.

Este enfoque “sin código” resulta muy atractivo para equipos de marketing, ventas u operaciones. En general, para quienes necesitan automatizar informes y análisis con rapidez. Sin invertir tiempo en aprender librerías ni debuggear scripts. La IA se encarga de traducir las instrucciones de negocio en operaciones técnicas concretas.

Lo interesante es que ahora puedes elegir entre tres grandes caminos para automatizar Excel:

  • Código con librerías clásicas.
  • Integración nativa de Python dentro de Excel.
  • Agentes de IA externos.

La mejor opción depende del nivel técnico del equipo, del volumen de datos y de cuánto control fino necesitas sobre el proceso.

Con todo este panorama, la unión de Python y Excel se consolida como una solución muy potente tanto para perfiles técnicos como para usuarios de negocio. Desde la integración nativa en la nube de Microsoft con Copilot, pasando por las librerías clásicas como openpyxl o pandas, hasta las nuevas herramientas con IA que automatizan tareas por ti. Tienes a tu disposición un abanico de opciones enorme para llevar tus hojas de cálculo a otro nivel sin renunciar a la comodidad del entorno que usas cada día.

Analiza tus datos como un científico: Herramientas de Excel para un análisis profesional y eficaz
Artículo relacionado:
Analiza tus datos como un científico: Herramientas de Excel para un análisis profesional y eficaz