python 写excel saves报错,.xlsx和xls(最新版本)到pdf使用python

With the help of this .doc to pdf using python

Link I am trying for excel (.xlsx and xls formats)

Following is modified Code for Excel:

import os

from win32com import client

folder = "C:\\Oprance\\Excel\\XlsxWriter-0.5.1"

file_type = 'xlsx'

out_folder = folder + "\\PDF_excel"

os.chdir(folder)

if not os.path.exists(out_folder):

print 'Creating output folder...'

os.makedirs(out_folder)

print out_folder, 'created.'

else:

print out_folder, 'already exists.\n'

for files in os.listdir("."):

if files.endswith(".xlsx"):

print files

print '\n\n'

word = client.DispatchEx("Excel.Application")

for files in os.listdir("."):

if files.endswith(".xlsx") or files.endswith('xls'):

out_name = files.replace(file_type, r"pdf")

in_file = os.path.abspath(folder + "\\" + files)

out_file = os.path.abspath(out_folder + "\\" + out_name)

doc = word.Workbooks.Open(in_file)

print 'Exporting', out_file

doc.SaveAs(out_file, FileFormat=56)

doc.Close()

It is showing following error :

>>> execfile('excel_to_pdf.py')

Creating output folder...

C:\Excel\XlsxWriter-0.5.1\PDF_excel created.

apms_trial.xlsx

~$apms_trial.xlsx

Exporting C:\Excel\XlsxWriter-0.5.1\PDF_excel\apms_trial.pdf

Traceback (most recent call last):

File "", line 1, in

File "excel_to_pdf.py", line 30, in

doc = word.Workbooks.Open(in_file)

File ">", line 8, in Open

pywintypes.com_error: (-2147352567, 'Exception occurred.', (0, u'Microsoft Excel

', u"Excel cannot open the file '~$apms_trial.xlsx' because the file format or f

ile extension is not valid. Verify that the file has not been corrupted and that

the file extension matches the format of the file.", u'xlmain11.chm', 0, -21468

27284), None)

>>>

There is problem in

doc.SaveAs(out_file, FileFormat=56)

What should be FileFormat file format?

Please Help

解决方案

Link of xlsxwriter :

With the help of this you can generate excel file with .xlsx and .xls

for example excel file generated name is trial.xls

Now if you want to generate pdf of that excel file then do the following :

from win32com import client

xlApp = client.Dispatch("Excel.Application")

books = xlApp.Workbooks.Open('C:\\excel\\trial.xls')

ws = books.Worksheets[0]

ws.Visible = 1

ws.ExportAsFixedFormat(0, 'C:\\excel\\trial.pdf')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值