Las hojas de cálculo de Excel pueden ser poderosas, pero algunas tareas pueden requerir más poder de programación. Ingrese Python y el módulo Openpyxl.

Openpyxl proporciona funciones que le permiten trabajar con un archivo de Excel desde Python. Puede usarlo para procesar datos, crear nuevas hojas de cálculo e incluso manipular fórmulas.

La biblioteca es útil si necesita automatizar los mismos cálculos repetitivos en muchos archivos de Excel. Este puede ser el caso si necesita manejar grandes datos o realizar análisis de datos.

Cómo instalar el módulo Openpyxl

Primero, instale Openpyxl en su computadora con estos pasos:

  1. Abra un símbolo del sistema y ejecute lo siguiente:
    pip instalar openpyxl
  2. Si lo anterior no funciona, puede descargar el módulo desde Página de descarga de archivos de Openpyxl:
    1. Descargue el archivo openpyxl-version.tar.gz.
    2. Extraiga el contenido del archivo.
    3. Abra un símbolo del sistema. Navegue a la carpeta de los archivos extraídos y ejecute el siguiente comando:
      py setup.py instalar
instagram viewer

Cree sus archivos de Excel y datos de prueba

Cree muchos archivos de Excel y agrégueles algunos datos de prueba. Si es nuevo en Excel, hay muchos herramientas que pueden ayudarte a aprenderlo.

  1. Cree varios archivos de Excel en la misma carpeta. En este escenario, hay cinco archivos de Excel. Cada archivo almacena datos de población de tres países diferentes.
  2. En cada archivo de Excel, agregue algunos datos de prueba. Por ejemplo:

Este ejemplo incluye datos relacionados con la población de muchos países.

Cómo crear el script de Python

Cree el script de Python de la siguiente manera:

  1. Cree un nuevo archivo llamado dataAnalysisScript.py. Ábralo usando cualquier buen editor de texto, como Código de Visual Studio o Átomo.
  2. Agregue las siguientes tres importaciones en la parte superior del archivo. "os" y "sys" se relacionan con acceder a archivos en su computadora o cerrar el programa. "openpyxl" es el módulo descargado en el paso anterior que le permite leer y escribir archivos de Excel.
    importar openpyxl
    importar sistema operativo
    sistema de importación
  3. Debajo de las importaciones, agregue la estructura básica del script de Python a continuación. Tenga en cuenta que la estructura del código en Python depende de la sangría correcta.
    # Principal, inicio del programa
    si __nombre__ == "__principal__":
    mientras que es cierto:
    # Escriba el código aquí
    # Cuando finalice el código, cierre el programa.
    sys.exit()
  4. Dentro del ciclo while, agregue un mensaje para que el usuario ingrese la ruta a la carpeta que contiene los archivos de Excel.
    si __nombre__ == "__principal__":
    mientras que es cierto:
    # Pide al usuario que ingrese la ruta del archivo de Excel.
    filePath = input('Ingrese la ruta de la carpeta donde se almacenan los archivos de Excel:')
    # Va dentro de esa carpeta.
    os.chdir (ruta del archivo)
    # Obtiene la lista de archivos de Excel dentro de la carpeta.
    excelFiles = os.listdir('.')

Cómo leer y escribir datos de los archivos de Excel

Utilice un bucle for para abrir, leer, manipular y cerrar cada uno de los archivos de Excel.

  1. Agregue un bucle for para cada archivo de Excel. Dentro del ciclo, abra cada archivo.
    # Para cada archivo de Excel
    para i en el rango (0, len (archivos de Excel)):
    # Esto está usando el módulo openpyxl para abrir el archivo de Excel.
    wb = openpyxl.load_workbook (archivos de Excel[i])
    hoja = wb.activo
  2. El siguiente código lee un valor específico de una celda en particular:
    valor_celda = hoja[f'B3'].valor
  3. El siguiente código escribe datos en la celda "A10":
    sábana[f'A10'].valor = 56
    También puede escribir en la celda especificando el número de fila y columna. El siguiente código agrega el número "2" en la celda "F1".
    hoja.celda (fila=1, columna=6).valor = 2

Cómo realizar funciones integradas de Excel usando el script de Python

Para cada archivo de Excel, calcule la suma, el promedio y la desviación estándar para cada columna de "país". El siguiente código calcula la suma de todos los números para cada país:

hoja[f'B11'].valor = '=SUMA(B4:B9)' 
hoja[f'C11'].valor = '=SUMA(C4:C9)'
hoja[f'D11'].valor = '=SUMA(D4:D9)'
  • '=SUMA(B4:B9)' es el cálculo de Excel que agregará todos los números en la columna B entre las celdas B4 y B9.
  • hoja[f'B11'].valor es el valor en la celda B11. El programa almacenará el resultado final en esta celda.

También puede calcular las funciones de Excel promedio y desviación estándar de la misma manera que se muestra arriba.

hoja[f'B12'].valor = '=PROMEDIO(B4:B9)'
hoja[f'C12'].valor = '=PROMEDIO(C4:C9)'
hoja[f'D12'].valor = '=PROMEDIO(D4:D9)'
hoja[f'B13'].valor = '=DESVEST(B4:B9)' 
hoja[f'C13'].valor = '=DESVEST(C4:C9)'
hoja[f'D13'].valor = '=DESVEST(D4:D9)'

Cómo escribir en el archivo y cerrar el libro de trabajo

El código restante guarda y cierra cada libro de trabajo, luego cierra el programa.

  1. Dentro del bucle for, después de realizar las funciones de Excel requeridas, guarde los cambios realizados en el archivo de Excel.
    wb.save (archivos de Excel[i])
    imprimir (excelFiles[i] + 'completado.')
  2. Fuera del bucle for, cierre el script de Python.
    sys.exit()

El código en conjunto:

# Principal, inicio del programa
si __nombre__ == "__principal__":
mientras que es cierto:
filePath = input('Ingrese la ruta de la carpeta donde se almacenan los archivos de Excel:')
os.chdir (ruta del archivo)
excelFiles = os.listdir('.')

# Para cada archivo de Excel
para i en el rango (0, len (archivos de Excel)):

wb = openpyxl.load_workbook (archivos de Excel[i])
hoja = wb.activo

# Realice todas las funciones de Excel requeridas como se muestra arriba aquí

# Guardar y cerrar el libro de trabajo
wb.save (archivos de Excel[i])
imprimir (excelFiles[i] + 'completado.')

# Cuando finalice el código, cierre el programa.
sys.exit()

Cómo ejecutar el script de Python

  1. Abra el símbolo del sistema. Navegue hasta donde almacenó su script. Si almacenó su secuencia de comandos en el escritorio, el comando se vería así:
    cd C:\Usuarios\Sharl\Escritorio
  2. Introduzca lo siguiente para ejecutar el script:
    python dataAnalysisScript.py
  3. El script comenzará pidiéndole que ingrese a la carpeta que almacena todos sus archivos de Excel. Como ejemplo, si almacenó esta carpeta en el escritorio, la ruta del archivo sería:
    C:\Usuarios\Sharl\Desktop\CountryData
  4. Abra uno de los archivos de Excel en la carpeta para ver los cambios realizados.

Asegúrese de que ninguno de los archivos de Excel esté abierto cuando ejecute el script.

Automatizando más con Python

Ahora tiene los conceptos básicos de cómo realizar funciones de Excel dentro de un script de Python. Ahora puede aprender a realizar muchas más funciones de Excel, así como muchas otras formas de automatizar archivos de Excel. Esto incluye usar una biblioteca como Pandas para importar datos, o incluso usar Visual Basic para realizar tareas repetitivas en Excel.

Cómo crear un formulario de entrada de datos automatizado en Excel VBA

Leer siguiente

CuotaPíoCuotaCorreo electrónico

Temas relacionados

  • Programación
  • Programación
  • Pitón
  • Microsoft Excel
  • Hoja de cálculo

Sobre el Autor

Sharlene Von Drehnen (4 artículos publicados)

Sharlene es redactora técnica en MUO y también trabaja a tiempo completo en desarrollo de software. Es Licenciada en TI y tiene experiencia previa en Aseguramiento de la Calidad y tutoría Universitaria. Sharlene ama jugar y tocar el piano.

Más de Sharlene Von Drehnen

Suscríbete a nuestro boletín

¡Únase a nuestro boletín para obtener consejos técnicos, reseñas, libros electrónicos gratuitos y ofertas exclusivas!

Haga clic aquí para suscribirse