import xlwings as xw
from pathlib import Path
from glob import glob
from tkinter.filedialog import *
from tkinter.messagebox import *
def xlsx2xlsxmanycopy():
showinfo('提示','选择一个excel-xlsx文件,再选择目标文件夹(不含子文件夹),拷贝这个表文件首页到文件夹里多个表文件的首页。')
fenliexlsxPath2 = askopenfilename(title='选择excel - xlsx文件', defaultextension='.xlsx')
workwhere2bgfl2 = askdirectory(title='选择输出的文件夹') + '/'
app2x2x=xw.App(visible=False, add_book=False)
wb1workbook_name2 = fenliexlsxPath2
wb1workbookx2x = app2x2x.books.open(wb1workbook_name2)
ws1workbookx2x01 =wb1workbookx2x.sheets[0]
# path_listx2x = glob(os.path.join(workwhere2bgfl2, '*.xlsx'))
# x2xpg=Path(r'%s'%workwhere2bgfl2).glob('*.xls*')
path_listx2x=Path(r'%s'%workwhere2bgfl2).glob('*.xls*')
for x2x in path_listx2x:
try:
# if '~' in x2x:
# continue
print(x2x)
wb2x=app2x2x.books.open(x2x)
time.sleep(1)
ws2x=wb2x.sheets[0]
time.sleep(1)
ws1workbookx2x01.api.Copy(Before=ws2x.api)
time.sleep(1)
wb2x.save(x2x)
time.sleep(1)
wb2x.close()
runingpb()
except:
continue
wb1workbookx2x.close()
app2x2x.quit()
showinfo('notice', '完毕!在你指定目录下%s。' % workwhere2bgfl2)
b7biao=ttk.Button(xlsxtubiaoframe,text=" 单文件单表复制到多文件多表首页",width=28,command=xlsx2xlsxmanycopy)