将文件夹中的文件转换为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)
希望对您有所帮助。如果这不是答案,您需要在上面的问题中包含您得到的回溯。目前,没有足够的信息来自信地回答您的问题。
我正在尝试完成一个将文件夹中的 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)
希望对您有所帮助。如果这不是答案,您需要在上面的问题中包含您得到的回溯。目前,没有足够的信息来自信地回答您的问题。