Kopieren Sie Excel als Vorlage und Benennen Sie die Datei um. Übrigens möchte ich nur einige Werte des als Deckblatt behandelten Blattes neu schreiben.
Basierend auf einer bestimmten Vorlage für die Arbeit Ich muss einige ähnliche Dateien vorbereiten, Es müssen nur einige Zellenwerte geändert werden.
Wenn Sie nur Dateien duplizieren möchten, können Sie bat verwenden, Es ist mühsam, Excel zu öffnen und die Wertänderung neu zu schreiben. VBA ist in Ordnung, aber ich möchte es nicht zu oft verwenden. Wenn möglich, möchte ich auch Python üben.
Wenn Sie den Dateinamen und den geänderten Wert in csv definieren Es ist leicht zu ändern und es ist schön, es wiederverwenden zu können.
cpFileCopyNameByCSVlist.py
import os
import sys
import pandas as pd
import shutil
import openpyxl
csvname = './cpfilelist.csv'
resultFolder = './cpResult/'
templatefilename = './template.xlsx'
shutil.rmtree(resultFolder)
os.mkdir(resultFolder)
#read list from csv
data = pd.read_csv(csvname).values.tolist()
wsname = 'header'
for row in data:
#copy template file renamed by list.csv
print(row[0] +":"+row[1])
newFileName = resultFolder + row[0] +'.xlsx'
newTitleName = row[1]
shutil.copyfile(templatefilename,newFileName)
# change cell.value from csv valye
wb = openpyxl.load_workbook(newFileName)
ws=wb[wsname]
ws['B5'] = newTitleName
wb.save(newFileName)
wb.close()
sys.exit(0)
Pandas ist bequem.