Python 的 spire.xls 产生 AttributeError: 'NoneType' 对象没有属性 'Workbook_Dispose'

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

我正在尝试用Python编写一个简单的程序,将excel文件保存为pdf。我正在使用通过谷歌搜索找到的代码。我跑了

pip install Spire.XLS-for-Python

pip install plum-dispatch==2.1.1

成功了。 这是我从互联网上批量复制的代码,仅更改了文件名:

from spire.xls import *
from spire.common import *


inputFile = "/Users/myname/Desktop/XYZ.xlsm"
outputFile = "/Users/myname/Library/Mobile      Documents/com~apple~CloudDocs/Development/CellRangeToPDF.pdf"

#create a workbook
workbook = Workbook()
#load a excel document
workbook.LoadFromFile(inputFile)
workbook.ConverterSetting.SheetFitToPage = True
#convert to PDF file
workbook.SaveToFile(outputFile, FileFormat.pdf)
workbook.Dispose()

它会产生以下错误(我不包括完整的回溯,但如果需要的话当然可以):

AttributeError: 'NoneType' object has no attribute 'Workbook_Dispose'

我在任何常用论坛中都找不到满意的答案

我使用的是 Python 3.11 和 PyCharm 2023.2。我重新安装了Python和PyCharm也没有用。

我是新手,Python 编码经验有限,所以请耐心等待

非常欢迎任何建议

python-3.x pycharm spire.xls
1个回答
0
投票

将“workbook.SaveToFile(outputFile, FileFormat.pdf)”更改为“workbook.SaveToFile(outputFile, FileFormat.PDF)”。

我可以毫无问题地运行以下代码:

from spire.xls import *
from spire.common import *

workbook = Workbook()
workbook.LoadFromFile("Sample.xlsx")

workbook.ConverterSetting.SheetFitToPage = True
workbook.SaveToFile("ExcelToPDF.pdf", FileFormat.PDF)
workbook.Dispose()
© www.soinside.com 2019 - 2024. All rights reserved.