我试图打开xlsx文件和xlsm文件都给我同样的错误
badzipfile: file is not a zip file
这是我正在输入的内容:
import openpyxl
wb=openpyxl.load_workbook('c:\\users\\me\\documents\\filename.xlsm', keep_vba=True)
wb2=openpyxl.load_workbook('c:\\users\\me\\documents\\filename2.xlsx')
两个load_workbook
命令都会导致相同的错误。它们都存在于那个位置。为什么我收到此错误?
同样的问题发生在我身上,然后我注意到以下几点:
当我从文件管理器创建.xlsx文件时,通过使用.xlsx格式创建新文档,我遇到了同样的错误。但是当我在我的情况下用一些电子表格软件(libreoffice-calc)创建文件时,它工作得很好。我希望这可能有所帮助。
我的预感是你的openpyxl版本不是最新的(2.3.1)或你的源文件有问题。要升级到openpyxl的最新版本,请使用:
pip install openpyxl --upgrade
源文件是否已加密?
这是因为您创建了空的.xlsx而没有元数据,这是一个没有单元格格式的空文件。使用exel或等效的电子表格软件将空文件保存在该目录中,这将创建一个带有单元格格式的xlsx文件,保存后尝试使用openpyxl加载文件
我迟到了,但我收到了同样的错误,但出于不同的原因。
在我的Mac上,当我将.xlsx文件剪切并粘贴到我想要的目录中时,它实际上并没有放置文件本身,它放置了一个符号链接。由于某种原因,这会引起同样的错误。我通过打开文件并使用“另存为”来解决这个问题。
当我将openpyxl指向文件的别名而不是原始文件时,这也发生在我身上。
我做了一些非常愚蠢的事情并得到了同样的错误。基本上,今天是我第一次尝试这个,我得到它与'自动化'示例,然后尝试我的Excel。没工作!我花了一段时间才意识到错误是由于工作簿密码受到保护。该错误根本不匹配,但当我从工作簿中删除保护时,它工作了!我能说什么,但'呃'和'是啊!'?