Python “WindowsPath”类型的对象无法转换为COM变量

Python “WindowsPath”类型的对象无法转换为COM变量,python,pdf,xlsx,win32com,Python,Pdf,Xlsx,Win32com,我有一个xlsx文件,它是收据的模板。它包含图像和单元格。我过去常常手动进入文件,更新信息,然后在发送给我的客户之前导出为pdf。如果可能的话,我希望能够通过python将xlsx转换为pdf 我的问题是没有人展示一个教程,它只是选择一个xlsx文件并将其更改为pdf。或者没有像样的视频教程 我已经尝试让openpyxl将其保存为带有.pdf的扩展名,但我知道这是一个长期的尝试。我试着仿效一个关于堆栈溢出的例子,但效果不是很好 我不断得到: File "<COMObject <unk

我有一个xlsx文件,它是收据的模板。它包含图像和单元格。我过去常常手动进入文件,更新信息,然后在发送给我的客户之前导出为pdf。如果可能的话,我希望能够通过python将xlsx转换为pdf

我的问题是没有人展示一个教程,它只是选择一个xlsx文件并将其更改为pdf。或者没有像样的视频教程

我已经尝试让openpyxl将其保存为带有.pdf的扩展名,但我知道这是一个长期的尝试。我试着仿效一个关于堆栈溢出的例子,但效果不是很好

我不断得到:

File "<COMObject <unknown>>", line 5, in ExportAsFixedFormat 
Objects of type 'WindowsPath' can not be converted to a COM VARIANT
我希望它能打开我在Summer Bookings.xlsx之后调用的xlsx文件,并将其保存为名为hello.pdf的pdf文件

from pathlib import Path
from win32com import client

#sets filename and file
file_name = 'After Summer Bookings.xlsx'
dir_path = Path('C:/Users/BOTTL/Desktop/Business')
new_file_name = 'hello.pdf'
new_save_place = ('C:/Users/BOTTL/Desktop/Business Python/')
path_and_place = new_save_place + new_file_name

xlApp = client.Dispatch("Excel.Application")
books = xlApp.Workbooks.Open(dir_path / file_name)
ws = books.Worksheets[0]
ws.Visible = 1
ws.ExportAsFixedFormat(0,path_and_place)

当连接位置和文件名时,它不喜欢我将其设置为路径,因此现在我删除了路径,它就像一个梦一样工作:

关于so的示例->指向您尝试遵循的内容的链接在哪里?看看这个。ExportAsFixedFormat的path参数应与以下格式匹配:ExportAsFixedFormat0,'C:\\excel\\trial.pdf'Hi这是我遵循的线程,我代码中的变量与上面的变量相同。如果我只放置文件名hello.pdf而不是放置路径,则代码有效。它将它保存到C:\Users\BOTTL\Documents\folder将在2天内完成:似乎在此之前我无法完成
from pathlib import Path
from win32com import client

#sets filename and file
file_name = 'After Summer Bookings.xlsx'
dir_path = Path('C:/Users/BOTTL/Desktop/Business')
new_file_name = 'hello.pdf'
new_save_place = ('C:/Users/BOTTL/Desktop/Business Python/')
path_and_place = new_save_place + new_file_name

xlApp = client.Dispatch("Excel.Application")
books = xlApp.Workbooks.Open(dir_path / file_name)
ws = books.Worksheets[0]
ws.Visible = 1
ws.ExportAsFixedFormat(0,path_and_place)