Openpyxl 给出不一致的错误信息
Openpyxl gives an inconsistent error message
我有以下功能,可以使用 openpyxl 库从 excel 工作簿中读取:
import openpyxl
def read_excel(path):
excel_workbook = openpyxl.load_workbook(path, read_only = True)
# other logic
return None
我可以这样调用该函数:
read_excel("C:/Users/anon/Desktop/Current Projects/Test Files/Test.xlsm ")
它 returns 这个错误:
openpyxl.utils.exceptions.InvalidFileException: openpyxl does not support .xlsm file
format, please check you can open it with Excel first. Supported formats are: .xlsx,.xlsm,
.xltx,.xltm
那个错误信息让我很困惑。它告诉我它不支持 .xlsm
文件格式,它支持 .xlsm
文件格式。该文件在 excel 中打开得很好,为什么 openpyxl 不能读取我的 Excel 文件?
在.xlsm
之后的错误信息中多了一个空白字符。删除调用函数的路径字符串末尾的空白字符,函数运行无误。
read_excel("C:/Users/anon/Desktop/Current Projects/Test Files/Test.xlsm")
同样的问题今天也很困扰我,最后我将openpyxl从2.3.2更新到2.3.5,这个问题就消失了。
虽然我使用的是 Anaconda,但有时使用 pip 更新包可能是个不错的尝试。
我正在使用 PyQt5 并且遇到了同样的问题。我发现添加 _filter
解决了这个问题。整行内容为:
fileName, _filter = QtWidgets.QFileDialog.getOpenFileName(None, "Lists", "", "xlsx files *.xlsx")
我有以下功能,可以使用 openpyxl 库从 excel 工作簿中读取:
import openpyxl
def read_excel(path):
excel_workbook = openpyxl.load_workbook(path, read_only = True)
# other logic
return None
我可以这样调用该函数:
read_excel("C:/Users/anon/Desktop/Current Projects/Test Files/Test.xlsm ")
它 returns 这个错误:
openpyxl.utils.exceptions.InvalidFileException: openpyxl does not support .xlsm file
format, please check you can open it with Excel first. Supported formats are: .xlsx,.xlsm,
.xltx,.xltm
那个错误信息让我很困惑。它告诉我它不支持 .xlsm
文件格式,它支持 .xlsm
文件格式。该文件在 excel 中打开得很好,为什么 openpyxl 不能读取我的 Excel 文件?
在.xlsm
之后的错误信息中多了一个空白字符。删除调用函数的路径字符串末尾的空白字符,函数运行无误。
read_excel("C:/Users/anon/Desktop/Current Projects/Test Files/Test.xlsm")
同样的问题今天也很困扰我,最后我将openpyxl从2.3.2更新到2.3.5,这个问题就消失了。
虽然我使用的是 Anaconda,但有时使用 pip 更新包可能是个不错的尝试。
我正在使用 PyQt5 并且遇到了同样的问题。我发现添加 _filter
解决了这个问题。整行内容为:
fileName, _filter = QtWidgets.QFileDialog.getOpenFileName(None, "Lists", "", "xlsx files *.xlsx")