Skip to content
can-excel-use-python

¿Puede Excel utilizar Python?

Una alternativa a Microsoft Excel

A estas alturas, ya se habrá dado cuenta de que desde los directores ejecutivos multimillonarios hasta los becarios que trabajan en el sector financiero, todo el mundo utiliza Microsoft Excel. El procesamiento básico de datos, el cálculo de números, la creación y organización de hojas de cálculo son algunas de las tareas requeridas y necesarias que todo el mundo realiza mientras trabaja en este sector. Y el recurso número uno que utilizan para realizar estas tareas es siempre Microsoft Excel.

Sin embargo, eso no significa que no existan alternativas para Microsoft Excel. De hecho, existe un sinfín de otros programas de hojas de cálculo. Hay formas más fáciles y rápidas de manejar sus datos en otros programas. La palabra clave y el término aquí para ahorrar tiempo y ganar más energía para su procesamiento de datos es programación.

Python: La herramienta de programación más útil

Puede utilizar el lenguaje de programación más popular de Internet: Python. Este lenguaje de programación de código abierto se utiliza para construir sitios web, crear servidores y encargarse de transacciones complicadas y masivas. Aunque escribir y gestionar código puede parecer complejo para aquellos que no han hecho nada de programación en toda su vida, aprender Python no es tan difícil. Especialmente, ¡para los usuarios experimentados de Microsoft Excel!

La integración de Python en la industria financiera no debería ser una sorpresa. Aparte de crear aplicaciones para smartphones y programas para los sistemas operativos Mac y Windows, también se utiliza en el procesamiento y análisis de grandes cantidades de datos. Quizás, el mayor papel que desempeña Python puede verse en las transacciones bancarias y de criptodivisas. Algunos de los mayores programas bancarios se crean utilizando Python y Python se sigue utilizando en su infraestructura.

Y debido al hecho de que es eficiente, flexible y, lo que es más importante, potente, también se utiliza mucho en el comercio y las transacciones de criptodivisas. La última década nos mostró cómo las criptodivisas pueden llegar a ser instantáneamente más valiosas que cualquier otra moneda del mundo. Y esta ascensión va a continuar también en esta década. Python tiene que mantenerse en este ámbito, garantizando al mismo tiempo la seguridad y la coherencia de estas plataformas en las que los usuarios pueden comprar y vender criptodivisas con sólo tocar o pulsar un botón.

Un lenguaje que todo el mundo puede aprender

Leer lo que se puede conseguir con el lenguaje de programación Python puede crear la impresión de que «sólo los genios pueden utilizar esta herramienta». Eso es completamente falso. Usted, sí USTED, puede simplemente tomar un par de cursos y ponerse a aprender y escribir código. Hay muchas opiniones y estimaciones diferentes sobre cuánto necesita aprender Python. Según algunos desarrolladores de software y programadores informáticos experimentados, puede aprender las características más básicas del lenguaje en sólo dos semanas. Y si desea continuar y adquirir más experiencia, afirman que podrá sentirse cómodo con el lenguaje de programación en seis a ocho semanas.

Si se toma el aprendizaje de Python como un hobby, podrá crear su propia aplicación, su propio programa, su propio sitio web, etc. Y además, si ya es un ávido usuario de Microsoft Excel, ¡aprender Python para su procesamiento y análisis de datos le resultará mucho más fácil!

En esta entrada del blog, en los capítulos posteriores, leerá las razones por las que usted -como usuario de Microsoft Excel- debería aprender Python y encontrará comparaciones detalladas de los dos programas. Sin embargo, si desconoce los conocimientos básicos de Python y su terminología, puede experimentar algunas noches de insomnio mientras intenta aprender a codificar. Por eso puede examinar el primer capítulo en el que podrá ver las 11 palabras clave más comunes en Python.

Palabras clave más comunes en la terminología de Python

Para escribir en un lenguaje de programación, primero debe aprender a leer ese lenguaje. Afortunadamente para aquellos de ustedes que no han escrito ni una sola línea de código, Python es un lenguaje basado en sentencias. Esto significa que puede leerse tanto como escribirse con palabras. Eso es importante porque, por supuesto, parte del código que escribirá incluirá matemáticas y operaciones básicas; sin embargo, las sentencias y los códigos sencillos pueden existir tal y como están escritos (en su mayoría) en el idioma inglés. Eso es lo que hace que Python sea más fácil de aprender, no son ceros y unos. No es binario. Aunque es un lenguaje de programación escrito, sigue teniendo características detalladas y completas.

El lenguaje detallado de Python incluye muchas categorías. Hay convenciones, palabras clave, valores, excepciones y la lista continúa. En este capítulo explorará 11 palabras clave diferentes. Antes de continuar con la primera, definamos qué es realmente una palabra clave.

Una palabra clave en Python es una palabra a la que se le asigna un propósito específico. Usted, como usuario de Python, no puede cambiar lo que esta palabra clave hace o cómo opera. Sólo puede elegir si desea utilizarla o no. Ahora, ¡comencemos con la primera palabra clave básica!

  • if:

Si ha utilizado las fórmulas básicas de Microsoft Excel a través de VBA (Visual Basic for Applications), también habrá utilizado la función SI. Esta palabra clave comprueba la ‘verdad’ o ‘falsedad’ de la afirmación que viene después de ella.

  • verdadero

El valor ‘verdadero’ indica que la afirmación que le precede es verdadera.

  • falso:

El valor ‘false’ indica que la declaración es falsa. Se suelen utilizar con la palabra clave ‘if’. Líneas como

if STATEMENT true

o

si DECLARACIÓN falsa

indica que el código continuará operando una tarea.

  • ninguna:

Y luego está ‘ninguno’. El valor ‘none’ no indica ningún valor. Aunque, si se utiliza el valor ‘ninguno’ la declaración se considera ‘falsa’, hará que la declaración carezca de valor.

  • Si no:

La palabra clave ‘else’ funciona como lo contrario de la palabra clave ‘if’. Funciona limitando las sentencias. A continuación encontrará un ejemplo de las palabras clave:

else verdadero si STATEMENT-A falso

Esta línea de código indica que si la «DECLARACIÓN-A» es falsa entonces las otras declaraciones (else) serán verdaderas. También se utiliza a veces como en la función similar a either…or.

  • no:

Esta palabra clave niega lo que venga después de ella. Invierte el valor de las declaraciones. Por ejemplo:

DECLARACIÓN-B verdadera

no DECLARACIÓN-B

Como puede ver, «STATEMENT-B» se consideró ‘verdadero’ cuando se le dio ese valor. Sin embargo, en la siguiente línea de código con el uso de la palabra clave ‘not’, el valor de STATEMENT-B se convirtió en ‘false’.

  • importar:

También puede introducir fácilmente sus datos en su código Python. Con la palabra clave ‘import’, puede leer y escribir en sus archivos Excel. Encontrará información detallada sobre la lectura de archivos Excel en Python utilizando openpyxl en los capítulos posteriores.

  • de:

Esta palabra clave se utiliza sobre todo con la función ‘import’. Puede seleccionar de dónde desea importar sus módulos, archivos y datos.

  • como:

Esta palabra clave crea un nombre nuevo o alternativo para su archivo, módulo o datos. También se utiliza con la función ‘importar’ como puede verse a continuación con un ejemplo:

import ARCHIVO como ARCHIVO-NUEVO

De esta forma puede importar el archivo original y cuando importe los datos en Python, su archivo (o al menos el alias del mismo) se llamará «ARCHIVO-NUEVO».

  • Inténtelo:

Esta función se utiliza para ‘intentar’ y probar declaraciones o acciones en el código. Es una palabra clave muy versátil, lo que significa que también se puede utilizar con un montón de otras y diferentes palabras clave.

if BLOCK-A false

try

BLOQUE-B

Esta línea de código indica que el código escrito al final valoró «BLOQUE-A» como falso, entonces el código probará «BLOQUE-B».

  • excepto:

Esta palabra clave excluye diferentes objetos o sentencias de una tarea. Por ejemplo, usted desea probar la línea de código denominada «BLOQUE-C». Sin embargo, quiere excluir y dejar fuera la «DECLARACIÓN-A» que se encuentra en el «BLOQUE-C». La línea de código para esta tarea puede ser:

probar:

BLOQUE-C

excepto:

DECLARACIÓN-A

Antes de empezar a usar Python

Encuentre datos precisos

No importa si está introduciendo datos en un archivo de Microsoft Excel o en código Python, va a necesitar datos… muchos datos. La cantidad de sus datos es irrelevante, la calidad de sus datos siempre va a ser el factor más importante. Si trabaja en el sector financiero, ya sabe lo importantes que pueden ser los datos que introduce. Puede literalmente hacer o deshacer su futuro financiero y el de su empresa. Por eso es importante que reúna datos precisos. Además de .xls y .xlsx, no dude en buscar archivos en otros formatos como .txt y .csv para confirmar los datos que tiene.

Ajuste de su archivo (antes de Python)

Si sabe que va a importar su hoja de cálculo a Python, debería tener en cuenta algunos de los principios básicos de formato que se enumeran a continuación.

  • El encabezado

La primera fila de su hoja de cálculo debe consistir únicamente en su cabecera y nada más. Cuando importe su hoja de cálculo a Python, el programa considerará la primera fila de datos como su cabecera.

  • Evitar los espacios en blanco

No utilice espacios en blanco en su código ni en sus datos. No debe utilizar espacios en blanco en los nombres, sentencias y valores de sus datos. Si los utiliza, Python considerará cada elemento de sus datos «por separado». No funcionará correctamente.

  • ¡Guiones bajos por todas partes!

Si no le satisface no utilizar espacios en blanco, utilice guiones bajos para combinar diferentes palabras. Si lo prefiere, puede utilizar guiones.

  • Eliminar comentarios y notas

Antes de importar sus datos a Python, elimine todos los comentarios y notas añadidos a su archivo. De lo contrario, todos sus comentarios aparecerán en el código Python y confundirán tanto al programa como a usted.

  • Símbolos

Hay algunos símbolos que debe tratar de evitar utilizar debido a que tienen diferentes funciones en el programa Python. Estos símbolos son, entre otros

? (signo de interrogación),
$ (símbolo del dólar),
% (símbolo de porcentaje),
^ (signo de intercalación), & (símbolo y),
( ) (paréntesis),
# (signo de número [comúnmente conocido como hashtag]),
* (asterisco),
/ (barra oblicua),
\ (barra invertida),
[ ] (corchetes) y
{ } (llaves).

  • Cómo guardar su archivo

En primer lugar, no olvide guardar. ¡Nunca! Por eso debería activar la función «Autoguardar» en cualquier programa de hoja de cálculo que esté utilizando en este momento. Y si quiere que Python procese fácilmente sus datos, siempre puede optar por guardar su archivo de Microsoft Excel en formato .txt. Puede conseguirlo yendo a la pestaña «Archivo», eligiendo «Guardar como» y seleccionando el formato en el que desea guardar su archivo.

  • Front-End y Back-End

¿Ha oído alguna vez los términos desarrollador «front-end» y «back-end»? ¿En cuál de estas categorías se considera Python? La diferencia entre estos dos términos es que en el desarrollo front-end, los desarrolladores y programadores codifican lo que ven los usuarios.

Piense en una página web: Hay textos, fotos, imágenes, botones, enlaces, etc. Ahora bien, lo que se ve y cómo se ve es el trabajo de los desarrolladores front-end. Y para conseguirlo utilizan lenguajes de programación como HTML y JavaScript.

Puede imaginarse lo que hacen los desarrolladores del back-end: codifican lo que los usuarios no ven. Esto incluye los procedimientos de seguridad del sitio web y del servidor en el que se ejecuta, los detalles de las transacciones y todo el funcionamiento interno de cualquier cosa que se ejecute en código. Los desarrolladores de back-end utilizan lenguajes de programación como Python y C (C+ y C++). ¡Ahora ya sabe que ser un experto en Python le convierte en un desarrollador back-end!

Cómo leer sus archivos Excel utilizando Python (con openpyxl)

Leer el título de este capítulo puede causar cierta confusión, es totalmente comprensible. Así que, empecemos por lo básico antes de mostrar algunos ejemplos de código. Para leer su archivo Excel en Python y ver todos los datos, necesita importarlo y luego, devolver los valores y celdas que desea ver. Python no le mostrará todas las celdas de todas las filas y columnas a la vez. Puede hacerlo escribiendo un código; sin embargo, no le mostrará automáticamente todos los datos de su hoja de cálculo una vez que la importe. Así que, eso es todo.

La otra pregunta que puede tener en mente es: ¿Qué es openpyxl? Vamos a responderla. Openpyxl es una herramienta Python que le permite leer y escribir en archivos Excel con formato .xls, .xlsx, .xlsm, .xltx y .xltm.

Ahora, si ya se le ha quitado de la cabeza toda la confusión sobre qué es qué, ¡empecemos a leer algunas hojas de cálculo!

Para abrir primero su hoja de cálculo, puede aplicar algunas de las palabras clave que aparecen en los capítulos anteriores. Supongamos que el nombre de su archivo Excel es ‘prueba’:

from openpyxl import load_workbook
wb = load_workbook(nombre_archivo = ‘prueba.xlsx’)

Este sencillo código abrirá su hoja de cálculo en Python con la ayuda de openpyxl. Para ver las ‘hojas’ que tiene en su archivo y seleccionar una, utilizará el código siguiente:

workbook.sheetnames

[‘Hoja de prueba 1’] [‘Hoja de prueba 2’]

Este código ‘workbook.sheetnames’ le mostrará todos los nombres de las hojas que tiene. Si no conoce el nombre de las hojas, puede utilizar el código siguiente. Éste selecciona la primera hoja que contiene datos:

hoja = libro.activo

<Hoja de trabajo ‘Hoja de prueba 1’>

Este código indica que la primera hoja disponible se llamó ‘Hoja de prueba 1’ y fue elegida para que usted la lea.

Digamos que toda la hoja de cálculo está formada por los valores de las criptodivisas. Así, la primera celda de la hoja (que es A1) incluye la palabra ‘Bitcoin’. Para devolver estos datos y leerlos en Python, su código será algo así

hoja[‘A1’].valor

‘Bitcoin’

Como puede ver, tiene que poner el código ‘.value’ justo después de escribir el número de la celda. La otra forma de ver los datos de una celda es escribir las filas y columnas en las que se encuentran:

hoja.celda(fila=1, columna=1).valor

‘Bitcoin’

Independientemente del método que utilice para devolver los datos de una celda concreta, tiene que utilizar ‘.value’ para que toda la tarea funcione.

Este proceso puede parecer confuso y complicado; sin embargo, si sigue estos pasos y está preparado, ¡lo conseguirá!

Por qué usted (como usuario de Microsoft Excel) debería utilizar Python

Puede que esté pensando que «no utilizo Python en mi trabajo, ¿por qué debería preocuparme por ello?». Puede que tenga razón… por ahora. Si no utiliza Python ni ningún otro lenguaje de programación en su lugar de trabajo, no significa que siga siendo así dentro de 10 años. Así es. Puede que Excel sea ahora el programa de hojas de cálculo más popular y uno de los más utilizados en todo el mundo . Pero, ¿qué espera hacer si Python ocupa su lugar en un futuro próximo? ¿Seguirá siendo capaz de decir «me da igual»?

La codificación está en todas partes

La codificación no está en el futuro; la codificación es el futuro. En la era digital, todos los dispositivos en los que opera tienen codificación en su núcleo. Un desarrollador codificó aplicaciones y operaciones en su ordenador o su teléfono, para que usted pueda operar con él. Un desarrollador codificó su navegador de Internet para que usted pueda navegar por Internet. ¡Un desarrollador construyó la propia Internet! Y, un desarrollador codificó esta misma página web desde la que usted está leyendo ahora mismo. Lo vea o no, la codificación está en todas partes y cada vez lo estará más en el mundo en constante desarrollo.

Los logros en el aprendizaje automático, su capacidad para descargar cualquier cosa en línea, su aplicación de mensajería, toda su vida digital, su criptodivisa, la nave espacial que orbita la Tierra, cada pequeño e increíblemente enorme logro se debe a la codificación.

Y no piense ni por un segundo que es «difícil de aprender». Si es capaz de escribir las funciones y fórmulas en Microsoft Excel, entonces, está más que cualificado para escribir código en Python. De hecho, se considera que el lenguaje de programación VBA es más difícil de aprender que el lenguaje Python. Python le muestra las palabras funcionales reales que debe escribir, ¡no ceros y unos!

¿Cuál debe utilizar para el análisis de datos: ¿Excel o Python?

Procesamiento básico de datos

Si no le interesa escribir código o fórmulas para procesar sus datos, Excel es una herramienta más fácil de usar. No promete más de lo que puede hacer. Y además, no hay curva de aprendizaje para Excel. Puede comprar y descargar el programa y empezar a utilizarlo inmediatamente. Si desea utilizar algunas de las fórmulas básicas para sus cálculos, sólo le llevará un par de minutos ver o leer tutoriales al respecto.

Por otro lado, Python es un lenguaje de programación pesado. No se ocupa del procesamiento básico de datos ni de nada básico en absoluto. A diferencia de Excel, sí tiene un aprendizaje, como es absolutamente necesario. Como ya se ha mencionado en los capítulos anteriores, le llevará al menos un par de semanas hacerse con la esencia del lenguaje de programación Python y de la codificación. Así pues, Excel se lleva la victoria en esta categoría.

Precio

Como puede resultar sorprendente, ¡el uso de Python es gratuito! Es un lenguaje de programación de código abierto con enormes bibliotecas que acompañan al propio programa. Y el aspecto de código abierto del programa lo hace más accesible. ¿Alguna vez ha descargado un parche para su videojuego o ha actualizado una de las aplicaciones de su teléfono? La característica de código abierto de Python permite a los desarrolladores, sí, incluso a usted, crear sus propias actualizaciones y mejoras. También gestiona mucho mejor los fallos y errores.

Sin embargo, Excel tiene un precio. Está incluido en el paquete Office 365 de Microsoft. Aunque los desarrolladores y programadores de Microsoft ofrecen una actualización adquirible cada tres años, Excel no es en absoluto un software de código abierto. Puede descargar plantillas de terceros, como las de Someka, pero ningún desarrollador puede mejorar el código del programa. Esto significa que Python es el claro ganador en la categoría de precio.

Manejo de grandes cantidades de datos

Por supuesto, Excel es una herramienta potente. Sin embargo, ¿ha intentado alguna vez trabajar con un archivo Excel o varios archivos con millones de filas de datos? Si es así, ¿quedó satisfecho con el manejo del programa? Cometer errores entre el vasto conjunto de datos de Excel es ineludible. Lo peor de todo es que cuando encuentra el error, es una pesadilla aún mayor corregirlo en un archivo de Excel. Y si tiene varios archivos con hojas de cálculo interminables, encontrar los errores individuales es un proceso que consume mucho tiempo y energía.

Python no se ve afectado por la cantidad de datos debido a que no tiene una interfaz que interactúe con los datos. Sólo trabaja con sus consultas; esto hace que la fusión de varios archivos grandes, incluidas largas hojas de cálculo, sea mucho más fácil y rápida. Sin lugar a dudas, Python se lleva la palma en el manejo de grandes cantidades de datos.

Integraciones y conectividad

Python juega un papel de «puente» con muchas aplicaciones y software diferentes en muchos campos distintos. Funciona también con varios formatos de archivo, incluidos los formatos .xls y .xlsx, que son formatos de archivo propios de Excel. Python se ha integrado con otros lenguajes de programación como SQL y ha interactuado con interfaces de programas de aplicación (API). Además, gracias a su característica de código abierto, los datos del programa pueden guardarse y enviarse a nubes. Esto permite que se pueda acceder a los conjuntos de datos con los que funciona a través de Internet y posibilita un nivel de conectividad que Excel no puede ofrecer.

La conectividad y la accesibilidad han sido los mayores obstáculos que ha tenido que superar Excel. Puede cargar sus archivos .xls o .xlsx en línea y editarlos con sus empleados en tiempo real… si utiliza Google Sheets. En este momento, Excel sigue por detrás en la mejora de sus herramientas de colaboración. Así que Python es el ganador también en esta categoría.

PALABRAS FINALES

En conclusión, Excel es uno de los programas más populares en todo el mundo. Como es fácil de aprender y de usar, atrae a la gente con tareas sencillas. Python, por otro lado, es como una máquina que nunca para de manejar datos. Por eso, si quiere utilizar sólo uno de los programas para su análisis de datos, debería optar por elegir Python.

En esta entrada del blog se detalla cuál utilizar en lugar de los otros programas. Sin embargo, ¡es posible utilizar ambos! Tienen propósitos diferentes en los que destacan, ¡por eso Someka tiene un post en su blog sobre cómo puede obtener cotizaciones bursátiles en tiempo real en Excel mientras utiliza los códigos de Python! Puede consultar la entrada del blog haciendo clic aquí.

Buscar