shenshuai 发表于 2020-8-31 02:01:59

在Macos上如何使用python将.xls文件转换成.xlsx

各位大佬们,
小弟我用的是MacOS Catalina 10.15.5,现在想用python快速将一个.xls文件转换成.xlsx,应该怎么做?
之前我在Win 10上有个什么win32的操作方法可以实现,但是mac貌似没有这个功能?
麻烦大家帮帮忙,因为我一次性就要转换上千份文件,如果手动一个个做就太慢了

弱弱的佳佳 发表于 2020-8-31 08:46:36

import os
import os.path
import win32com.client as win32

def xls_to_xlsx():
    rootdir = u'E:\\A'
    # 三个参数:父目录;所有文件夹名(不含路径);所有文件名
    for parent, dirnames, filenames in os.walk(rootdir):
      for fn in filenames:
            filedir = os.path.join(parent, fn)
            # print(filedir)
            excel = win32.gencache.EnsureDispatch('Excel.Application')
            wb = excel.Workbooks.Open(filedir)
            # xlsx: FileFormat=51
            # xls:FileFormat=56,
            wb.SaveAs(filedir.replace('xls', 'xlsx'), FileFormat=51)
            wb.Close()
            excel.Application.Quit()

if __name__ == '__main__':
    xls_to_xlsx()

Json21 发表于 2020-8-31 16:22:38

您好,可以使用 pyexcel,例如
import pyexcel as p

p.save_book_as(file_name='1.xls',
               dest_file_name='1.xlsx')

也可以安装命令pyexcel-cli,使用命令:
pyexcel transcode 1.xls 1.xlsx
页: [1]
查看完整版本: 在Macos上如何使用python将.xls文件转换成.xlsx