将文件夹中的文件转换为pdf

Convert files in a folder to pdf

我正在尝试完成一个将文件夹中的 excel 文件转换为 pdf 的程序。我对文件名有疑问。这是我到目前为止所拥有的。任何有关如何完成它的帮助将不胜感激。

import win32com.client, types, pythoncom, sys, os, string 
xlApp = win32com.client.Dispatch("Excel.Application")
for file in os.listdir("C:\Users\Desktop\ExcelFiles"):
    if file.endswith(".xlsx"):
        fileName = file
        books = xlApp.Workbooks.Open("C:\Users\Desktop\ExcelFiles"  + str(fileName))
        ws = books.Worksheets[0]
        ws.Visible = 1
        fileName.replace(".xlsx","")
        ws.ExportAsFixedFormat(0, "C:\Users\Desktop\PDF\" + str(fileName) + ".pdf") 

我认为问题出在这一行:

books = xlApp.Workbooks.Open("C:\Users\Desktop\ExcelFiles"  + str(fileName))

您最有可能在 ExcelFiles 后遗漏了一个尾部斜线:

books = xlApp.Workbooks.Open("C:\Users\Desktop\ExcelFiles\"  + str(fileName))

Python 为这种情况提供了跨平台的 os.path.join 功能。它将使用正确的特定于平台的斜杠连接路径字符串:

filepath = os.path.join("C:\Users\Desktop\ExcelFiles", fileName)
books = xlApp.Workbooks.Open(filepath)

希望对您有所帮助。如果这不是答案,您需要在上面的问题中包含您得到的回溯。目前,没有足够的信息来自信地回答您的问题。