Jun-17-2020, 05:28 PM
(Jun-17-2020, 01:16 PM)buran Wrote: with some small changes
import openpyxl as xl; import os input_dir = 'C:/data' output_dir = os.path.join(input_dir, 'output') # make sure it exists template = os.path.join(input_dir, 'Template.xlsx") files = [file for file in os.listdir(input_dir) if os.path.isfile(file) and file.endswith('.xlsx')] for file in files: input_file = os.path.join(input_dir, file) # make the full path, so that it does not depend on input_dir and CWD being the same wb=xl.load_workbook(input_file) ws=wb.worksheets[1] # Open template wb2 = xl.load_workbook(template) ws2 = wb2.worksheets[2] # calculate total number of rows and # columns in source excel file mr = ws.max_row mc = ws.max_column # copying the cell values from source # excel file to destination excel file for i in range (1, mr + 1): for j in range (1, mc + 1): # reading cell value from source excel file c = ws.cell(row = i, column = j) # Cells for source data to pasted inside Template ws2.cell(row = i+12, column = j+1).value = c.value # saving the destination excel file output_file = os.path.join(output_dir, file) wb2.save(output_file)
I'm trying to figure out a way to save the files, as something different.
Example Save as:
Report_6a_v1_Regular.xlsx
Report_6a_v1_T01.xlsx
Report_6a_v1_T02.xlsx
Report_6a_v1_T03.xlsx
Report_6a_v1_P01.xlsx
Report_6a_v1_P02.xlsx
Report_6a_v1_P03.xlsx