如何在Python中将Excel工作表保存为HTML?
我在这个图书馆工作 我打开了一本工作簿,在里面写了一些东西() 我仔细阅读了文档,但似乎找不到“另存为”功能 是否有方法(任何方法)将如何在Python中将Excel工作表保存为HTML?,python,html,vba,excel,Python,Html,Vba,Excel,我在这个图书馆工作 我打开了一本工作簿,在里面写了一些东西() 我仔细阅读了文档,但似乎找不到“另存为”功能 是否有方法(任何方法)将工作簿保存为HTML文件 如果python代码无法实现,我是否可以编写VBA代码并从python调用该代码?也许您可以使用xlrd解析excel文件,然后再转换为html您可以使用win32com.client调用VBA宏。假设您的文件名为Bar VBA: Sub SaveHTML() ThisWorkbook.SaveAs Filename:="C:\Foo\B
工作簿
保存为HTML文件
如果python代码无法实现,我是否可以编写VBA代码并从python调用该代码?也许您可以使用xlrd解析excel文件,然后再转换为html您可以使用
win32com.client
调用VBA宏。假设您的文件名为Bar
VBA:
Sub SaveHTML()
ThisWorkbook.SaveAs Filename:="C:\Foo\Bar.htm", FileFormat:=xlHtml
End Sub
from win32com.client import Dispatch
xl = Dispatch('Excel.Application')
xl.Workbooks.Open('C:\Foo\Bar.xlsx')
#xl.Visible = True -- optional
xl.Application.Run("SaveHTML")
xl.Workbooks.Close
Python:
Sub SaveHTML()
ThisWorkbook.SaveAs Filename:="C:\Foo\Bar.htm", FileFormat:=xlHtml
End Sub
from win32com.client import Dispatch
xl = Dispatch('Excel.Application')
xl.Workbooks.Open('C:\Foo\Bar.xlsx')
#xl.Visible = True -- optional
xl.Application.Run("SaveHTML")
xl.Workbooks.Close
根据需要修改
编辑:我忘了添加,使用win32com关闭Excel绝对是一件痛苦的事情。工作簿将关闭,但应用程序本身将停留(请检查任务管理器)。请参阅解决方法。您可以直接从Python保存到HTML,然后附加到电子邮件:
from win32com.client.gencache import EnsureDispatch
from win32com.client import constants
yourExcelFile = ...
newFileName = ...
xl = EnsureDispatch('Excel.Application')
wb = xl.Workbooks.Open(yourExcelFile)
wb.SaveAs(newFileName, constants.xlHtml)
xl.Workbooks.Close()
xl.Quit()
del xl
如果您想生成HTML,那么为什么要在excel中编写表格数据?为什么不直接使用表格数据生成HTML?@VIKASHJAISWAL,因为我已经花了6个月的时间为我的项目生成excel表格。重新开始可能需要付出不必要的努力。链接已失效。这部分工作正常,我生成了html,但问题是:#1。无法显示电子邮件#2.如何将一张工作表,第一张工作表,而不是工作簿的所有工作表保存为html。