es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

marca de agua o encabezado en archivo de Excel

Creo un archivo de Excel a partir de un dataframe:

#writer = pd.ExcelWriter('ΜΟΝΑΔΙΚΕΣ_ΠΡΟΣΛΗΨΕΙΣ.xlsx', engine='xlsxwriter')    
#uniq_pros.to_excel(writer, sheet_name='Sheet1')
#writer.save()

¿Cómo puedo agregar una marca de agua en cada página del archivo de Excel?

O
un encabezado con el texto y la imagen del logotipo en cada primera fila de las páginas (¿o en las primeras 25 líneas?)

con python.

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Para añadir una marca de agua a cada página del archivo de Excel, puedes utilizar el módulo xlsxwriter en Python de la siguiente manera:

    import xlsxwriter
    
    # crear un archivo de Excel
    workbook = xlsxwriter.Workbook('archivo_excel_con_marca_de_agua.xlsx')
    
    # añadir una hoja de trabajo
    worksheet = workbook.add_worksheet()
    
    # añadir marca de agua
    marca_de_agua = workbook.add_shape({
        'type': 'text',
        'text': 'TEXTO_DE_LA_MARCA_DE_AGUA',
        'color': '#C0C0C0',   # ajustar el color según tus preferencias
        'font_size': 40,      # ajustar el tamaño de fuente según tus preferencias
        'line_width': 0       # ajustar el ancho de línea según tus preferencias
    })
    # establecer la posición de la marca de agua
    marca_de_agua.set_position(0, 0)
    
    # establecer las propiedades de la marca de agua para cada página en el libro de trabajo
    for i in range(workbook.get_sheet_count()):
      worksheet = workbook.get_worksheet_by_name(f'Hoja{i+1}')
      worksheet.insert_shape('A1', marca_de_agua)
    
    # guardar el libro de trabajo
    workbook.close()
    

    Para añadir un encabezado con texto y una imagen de logotipo en la primera fila de todas las páginas (o 25 líneas), puedes utilizar el módulo openpyxl en Python que ofrece opciones de personalización de encabezados y pies de página:

    from openpyxl import load_workbook
    from openpyxl.drawing.image import Image
    
    # cargar el archivo de Excel y la hoja de trabajo activa
    workbook = load_workbook('nombre_del_archivo_excel.xlsx')
    worksheet = workbook.active
    
    # insertar una imagen en una ubicación específica
    img = Image('logo_de_la_empresa.jpg')
    worksheet.add_image(img, 'A1')
    
    # insertar texto en una ubicación específica
    texto_encabezado = 'NOMBRE_DE_LA_EMPRESA'
    worksheet.cell(row=1, column=2, value=texto_encabezado)
    
    # guardar el libro de trabajo
    workbook.save('nombre_del_archivo_excel.xlsx')
    

    Esto añadirá la imagen del logotipo de la empresa y el texto del encabezado en la primera fila de cada página del archivo de Excel. Para añadirlo en las primeras 25 filas, simplemente modifica el código para establecer el valor de row según sea necesario en la función cell.

Comments are closed.