gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-02 11:37:43 25 4
gpt4 key购买 nike

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

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

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

有人可以告诉我如何使用 Python 将 .xlsm 文件另存为 .xlsx 吗?

最佳答案

我建议您尝试使用 win32com 类型的方法。如果您使用的是 Windows,则可以使用 Python 自动执行 Excel 本身,以执行从 .xlxm 文件到 .xlsx 格式的转换。然后可以使用常用的 Pandas pd.read_excel() 函数正确读取该文件。

这可以按如下方式完成:

import win32com.client as win32

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

# Load the .XLSM file into Excel
wb = excel.Workbooks.Open(r'input.xlsm')

# Save it in .XLSX format to a different filename
excel.DisplayAlerts = False
wb.DoNotPromptForConvert = True
wb.CheckCompatibility = False
wb.SaveAs(r"output.xlsx", FileFormat=51, ConflictResolution=2)
excel.Application.Quit()

# Load the .XLSX file into Pandas
df = pd.read_excel('output.xlsx', sheetname='Data', header=None)

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

关于excel - 如何使用 Python 将 .xlsm(启用宏的 Excel 文件)转换为 .xlsx?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39292179/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com