Applies ToExcel para Microsoft 365

Python en Excel ahora está disponible para los usuarios empresariales y empresariales que ejecutan el Canal actual en Windows, a partir de la versión 2407 (compilación 17830.20128) y el Canal mensual para empresas en Windows, a partir de la versión 2408 (compilación 17928.20216). Está disponible en versión preliminar para los usuarios familiares y personales que ejecuten el Canal actual en Windows a partir de la versión 2405 (compilación 17628.20164). Python en Excel está disponible en versión preliminar para usuarios de Educación que ejecutan el Canal actual (versión preliminar) a través del Programa Insider de Microsoft 365. No está disponible actualmente para el Canal Semi-Annual Enterprise.

Primero se aplicará a Excel para Windows y más adelante a otras plataformas.  Para obtener más información sobre disponibilidad, consulte Disponibilidad de Python en Excel.​​​​​​​

Si tiene algún problema con Python en Excel, informe de ellos seleccionando Ayuda > Comentarios en Excel.

¿Es nuevo en Python en Excel? Comience con Introducción a Python en Excel.  

Empezar a usar Python 

Para empezar a usar Python en Excel, seleccione una celda y, en la pestaña Fórmulas, seleccione Insertar Python. Esto indica a Excel que desea escribir una fórmula Python en la celda seleccionada. 

Vaya a Fórmulas y seleccione Insertar Python.

O use la función =PY en una celda para habilitar Python. Después de escribir =PY en la celda, elija PY en el menú Función Autocompletar con las teclas de flecha abajo y tab, o agregue un paréntesis de apertura a la función: =PY(. Ahora, puede escribir código Python directamente en la celda. La siguiente captura de pantalla muestra el menú Autocompletar con la función PY seleccionada.

Escriba =PY en una celda para habilitar Python.

Una vez que Python está habilitado en una celda, esa celda muestra un icono PY . La barra de fórmulas muestra el mismo icono PY cuando se selecciona la celda Python. Consulta la siguiente captura de pantalla para obtener un ejemplo. 

Un libro de Excel con Python en Excel habilitado en una celda, que muestra el icono py verde en la celda.

Combinar Python con celdas y rangos de Excel

Para hacer referencia a objetos de Excel en una celda de Python, asegúrese de que la celda de Python está en modo de edición y, a continuación, seleccione la celda o el rango que desea incluir en la fórmula de Python. Esto rellena automáticamente la celda Python con la dirección de la celda o rango que ha seleccionado. 

Sugerencia: Use el método abreviado de teclado F2 para alternar entre el modo Entrar y el modo de edición en las celdas de Python. Alternar al modo de edición le permite editar la fórmula de Python, y alternar al modo Entrar le permite seleccionar celdas o rangos adicionales con el teclado. Para obtener más información sobre los métodos abreviados de teclado, consulte Métodos abreviados de teclado de Python en Excel.

Python en Excel utiliza la función personalizada de Python xl() para interfaz entre Excel y Python. La función xl() acepta objetos de Excel como rangos, tablas, consultas y nombres.

También puede escribir referencias directamente en una celda de Python con la función xl() . Por ejemplo, para hacer referencia a la celda A1 use xl("A1") y para el rango B1:C4 use xl("B1:C4"). Para una tabla con encabezados denominados MyTable, use xl("MyTable[#All]", headers=True). El especificador [#All] garantiza que se analiza toda la tabla en la fórmula de Python y headers=True garantiza que los encabezados de tabla se procesan correctamente. Para obtener más información sobre especificadores como [#All], vea Usar referencias estructuradas con tablas de Excel.

La imagen siguiente muestra un cálculo de Python en Excel que agrega los valores de la celda A1 y B1, con el resultado de Python devuelto en la celda C1

Use la función personalizada de Python xl() para interconectar entre Excel y Python.

Barra de fórmulas 

Use la barra de fórmulas para un comportamiento de edición similar al de un código, como usar la tecla Entrar para crear nuevas líneas. Expanda la barra de fórmulas con el icono de flecha abajo para ver varias líneas de código a la vez. También puede usar el método abreviado de teclado Ctrl+Mayús+U para expandir la barra de fórmulas. Las capturas de pantalla siguientes muestran una barra de fórmulas antes y después de expandirla para ver varias líneas de código Python.

Antes de expandir la barra de fórmulas: ... 

Después de expandir la barra de fórmulas:   

Expanda la barra de fórmulas para ver más líneas de código.

Sugerencia: Para obtener un espacio de edición de código aún mayor y características como la colorización de texto e IntelliSense, use python en el editor de código de Excel.

Tipos de salida 

Use el menú de salida de Python en la barra de fórmulas para controlar cómo se devuelven los cálculos de Python. Devolver cálculos como objetos python o convertir cálculos a valores de Excel y enviarlos directamente a una celda. La siguiente captura de pantalla muestra la fórmula de Python devuelta como un valor de Excel. 

Sugerencia: También puede utilizar el menú contextual para cambiar el tipo de salida de Python. Abra el menú contextual, vaya a Salida de Python y, a continuación, seleccione el tipo de salida deseado.

Utilice el menú de salida de Python para cambiar entre los tipos de salida.

La siguiente captura de pantalla muestra la misma fórmula de Python que la captura de pantalla anterior, ahora devuelta como un objeto de Python. Cuando se devuelve una fórmula como un objeto Python, la celda muestra un icono de tarjeta.

Nota: Los resultados de la fórmula devueltos a los valores de Excel se traducen al equivalente de Excel más cercano. Si planea reutilizar el resultado en un cálculo futuro de Python, se recomienda devolver el resultado como un objeto python. Devolver un resultado como valores de Excel le permite ejecutar análisis de Excel, como gráficos de Excel, fórmulas y formato condicional, en el valor.

Cuando se devuelven datos como un objeto python, la celda muestra un icono de tarjeta de Python.

Un objeto Python contiene información adicional dentro de la celda. Para ver la información adicional, abra la tarjeta seleccionando el icono de la tarjeta. La información que se muestra en la tarjeta es una vista previa del objeto, que es útil al procesar objetos grandes.

Python en Excel puede devolver muchos tipos de datos como objetos de Python. Una python útil en el tipo de datos de Excel es un DataFrame objeto. Para obtener más información sobre los DataFrames de Python, consulte Python en Excel DataFrames.  

Importar datos externos 

Todos los datos que procesa con Python en Excel deben proceder de la hoja de cálculo o de Power Query. Para importar datos externos, use la característica Obtener transformación de & en Excel para acceder a Power Query. Para obtener más información, vea Usar Power Query para importar datos para Python en Excel

Importante: Para proteger su seguridad, las funciones de datos externos comunes en Python, como pandas.read_csv y pandas.read_excel, no son compatibles con Python en Excel. Para obtener más información, consulte Seguridad de datos y Python en Excel.

Orden de cálculo 

Las instrucciones de Python tradicionales se calculan de arriba a abajo. En una celda de Python en Excel, las instrucciones de Python hacen lo mismo: calculan de arriba a abajo. Pero en una hoja de cálculo de Python en Excel, las celdas de Python se calculan en orden principal de fila. Los cálculos de celdas se ejecutan a través de una fila (de la columna A a la columna XFD) y, a continuación, a través de cada fila siguiente hacia abajo en la hoja de cálculo. 

Las instrucciones python están ordenadas, por lo que cada instrucción Python tiene una dependencia implícita en la instrucción python que precede inmediatamente en el orden de cálculo.  

El orden de cálculo es importante al definir variables y hacer referencia a ellas en una hoja de cálculo, porque debe definir variables antes de poder hacer referencia a ellas.  

Importante: El orden de cálculo de fila principal también se aplica en todas las hojas de cálculo de un libro y se basa en el orden de las hojas de cálculo del libro. Si usa varias hojas de cálculo para analizar datos con Python en Excel, asegúrese de incluir datos y cualquier variable que almacene datos en celdas y hojas de cálculo anteriores a las celdas y hojas de cálculo que analizan esos datos.   

Recálculo 

Cuando cambia un valor dependiente de una celda de Python, todas las fórmulas de Python se vuelven a calcular secuencialmente. Para suspender los recálculos de Python y mejorar el rendimiento, utilice el modo cálculo parcial o el modo de cálculo manual . Estos modos te permiten desencadenar un cálculo cuando estés listo. Para cambiar esta configuración, vaya a la cinta de opciones, seleccione Fórmulas y, después, abra Opciones de cálculo. A continuación, seleccione el modo de cálculo deseado. Los modos cálculo parcial y cálculo manual suspenden el recálculo automático para las tablas de datos y Python.

Deshabilitar el recálculo automático en un libro durante el desarrollo de Python puede mejorar el rendimiento y las velocidades individuales de cálculo de las celdas de Python. Sin embargo, debe volver a calcular manualmente el libro para garantizar la precisión en cada celda de Python. Hay tres formas de volver a calcular manualmente un libro en el modo Cálculo parcial o Cálculo manual .

  1. Use el método abreviado de teclado F9.

  2. Vaya a Fórmulas > Calcular ahora en la cinta de opciones.

  3. Vaya a una celda con un valor obsoleto, mostrado con formato de tachado, y seleccione el símbolo de error junto a esa celda. Después, seleccione Calcular ahora en el menú.

Errores 

Los cálculos de Python en Excel pueden devolver errores como #PYTHON!, #BUSY! y #CONNECT! a las celdas de Python. Para obtener más información, consulte Solucionar problemas de Python en errores de Excel.

Artículos relacionados 

¿Necesita más ayuda?

¿Quiere más opciones?

Explore las ventajas de las suscripciones, examine los cursos de aprendizaje, aprenda a proteger su dispositivo y mucho más.

Las comunidades le ayudan a formular y responder preguntas, enviar comentarios y leer a expertos con conocimientos extensos.