Salva la selezione di più cartelle di lavoro Excel in un pdf con Python

Vorrei fare un pdf somposto da gamme in tutte le cartelle di lavoro di Excel che si trovano in una data cartella (folderwithallfiles). Tutte le cartelle di lavoro avranno la stessa struttura in modo che il riferimento di gamma sia lo stesso per tutte le cartelle di lavoro.

Ho ottenuto lo script qui sotto per salvare la gamma in un file a un pdf, ma sarà inefficiente farlo per tutte le cartelle di lavoro e quindi unire i pdf. Può questo essere risolto con glob? o qualsiasi altro modo per automatizzare questo?

import win32com.client as win32 excel = win32.gencache.EnsureDispatch('Excel.Application') wb = excel.Workbooks.Open('C:\\Users\\myname\folderwithallfiles\excelfile1.xlsx') excel.Visible = False path_to_pdf = r'C:\\Users\\myname\folderwithallfiles\summaryreport.pdf' ws = wb.Worksheets("Sheet1") ws.Range("A1:Q59").Select() wb.ActiveSheet.ExportAsFixedFormat(0, path_to_pdf) 

Verifica il codice riportto di seguito se funziona. Ho scritto al volo. Fammi sapere se troverai problemi in esso.

 import pandas as pd import numpy as np import glob import pdfkit as pdf all_data = pd.DataFrame() for f in glob.glob("filepath\file*.xlsx"): df = pd.read_excel(f) all_data = all_data.append(df, ignore_index=True) all_data.to_html("filepath\all_data.html) pdf.from_file("filepath\all_data.html", "filepath\all_data.pdf")