Python 一鍵複制sheet工作表到另一個工作簿
源碼
from openpyxl import Workbook,load_workbook
def copy_sheet(src_xlsx,ssheetname,dst_xlsx,nsheetname=None):
if nsheetname==None:
nsheetname=ssheetname
try:
sw=load_workbook(f'{src_xlsx}')
except KeyError:
raise KeyError('舊工作簿不存在 The old xlsx is not exists')
try:
dw=load_workbook(f'{dst_xlsx}')
except FileNotFoundError:
dw=Workbook()
try:
sheet = dw[f'{nsheetname}']
except KeyError:
sheet=dw.create_sheet(f'{nsheetname}')
try:
src_sheet=sw[f'{ssheetname}']
except KeyError:
raise KeyError('源工作簿檔案不存在該工作簿 The sheet does not exist in the source file')
for row in src_sheet.iter_rows():
print(row)
row_list=[]
for cell in row:
row_list.append(cell.value)
print(row_list)
sheet.append(row_list)
dw.save(f'{dst_xlsx}')
參數
src_xlsx 源xlsx工作簿檔案(相對/絕對目錄及檔案名)包含xlsx字尾 不存在則報錯 字元串類型
ssheetname 源工作表名 不存在則報錯 字元串類型
nsheetname 複制後的工作表名 不填寫預設與原名相同 字元串類型
dst_xlsx 目标xlsx工作簿檔案 如不存在則建立