excel 文件格式转换 xls xlsx格式互换带进度条

如未安装pywin32,请先安装
pip install pywin32

如国外源速度不够,可采用国内源
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ pywin32

调用
excel = win32.gencache.EnsureDispatch(‘Excel.Application’)

		wb.SaveAs(xls_list+"x", FileFormat = 51)    51 表示转化为 .xlsx 
		wb.Close()                                = 56 i表示转化为 .xls 

可批量保存,但要注意是否有同名的结尾不同的文件名

import os							#找文件目录
import win32com.client as win32  	#操作excel文件
from tqdm import tqdm 				#进度条显示

path=input('输入整理前原始路径:  ')
if path=="":
	path=os.getcwd()

xlsx_lists=[]
xls_lists=[]
for file in os.listdir(path):
    filename=os.path.join(path,file)
    if os.path.isfile(filename):             #是目录
        if filename.endswith(".xls"):
        	xls_lists.append(filename)
        if filename.endswith(".xlsx"):
        	xlsx_lists.append(filename)

choose="3"
excel = win32.gencache.EnsureDispatch('Excel.Application')
while choose not in "1|2":
    choose =input("xls转为xlsx:1  xlsx转为xls:2  ")
if choose=="1":
	with tqdm(total=len(xls_lists),desc='写文件数 ',leave=True,unit='个',unit_scale=True,mininterval=0.5,bar_format=None) as pbar:
		for xls_list in xls_lists:
			pbar.update(1)
			wb = excel.Workbooks.Open(xls_list)
			wb.SaveAs(xls_list+"x", FileFormat = 51)    #FileFormat = 51 转化为.xlsx 
			wb.Close()                               #FileFormat = 56 转化为.xls 
		pbar.close()
else:
	with tqdm(total=len(xls_lists),desc='写文件数 ',leave=True,unit='个',unit_scale=True,mininterval=0.5,bar_format=None) as pbar:
		for xlsx_list in xlsx_lists:
			pbar.update(1)
			wb = excel.Workbooks.Open(xlsx_list)
			wb.SaveAs(xlsx_list[0:len(xlsx_list)-1], FileFormat = 56)    #FileFormat = 51 is for .xlsx extension
			wb.Close()   
		pbar.close()
excel.Application.Quit()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值