如何使用Python将.xlsm(支持宏的excel文件)转换为.xlsx?

问题描述 投票:2回答:1

我试图将.xlsm文件中的数据导入为数据框。当我使用下面的命令导入.xlsm文件时,它会给我一个空数据帧作为结果:

exp = pd.read_excel(File_Path+'file_name'.xlsx',sheetname='Data',header=None)

我手动将.xlsm文件保存为.xlsx文件并将其作为数据框导入。

任何人都可以告诉我如何使用Python将.xlsm文件保存为.xlsx?

excel windows python-2.7 xlsx xlsm
1个回答
2
投票

我建议你尝试使用win32com类型的方法如下:

import win32com.client as win32

excel = win32.gencache.EnsureDispatch('Excel.Application')

wb = excel.Workbooks.Open(r'input.xlsm')
excel.DisplayAlerts = False
wb.DoNotPromptForConvert = True
wb.CheckCompatibility = False
wb.SaveAs(r"output.xlsx", FileFormat=51, ConflictResolution=2)
excel.Application.Quit()

我建议你添加文件名的完整路径。

© www.soinside.com 2019 - 2024. All rights reserved.