以文本方式查看主题 - Foxtable(狐表) (http://www.foxtable.com/bbs/index.asp) -- 专家坐堂 (http://www.foxtable.com/bbs/list.asp?boardid=2) ---- 使用VBA生成网页 e.WriteExcelAsHTML(wb)失效 (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=150381) |
-- 作者:hongsejiyi -- 发布时间:2020/5/28 13:08:00 -- 使用VBA生成网页 e.WriteExcelAsHTML(wb)失效 请问教师:使用这个正常 e.WriteExcelAsPDF(wb),但用 e.WriteExcelAsHTML(wb),就失效。 代码如下: [此贴子已经被作者于2020/5/28 20:27:28编辑过]
|
-- 作者:有点蓝 -- 发布时间:2020/5/28 13:51:00 -- Excel文件发上来测试一下 |
-- 作者:hongsejiyi -- 发布时间:2020/5/28 19:38:00 -- 以下是Excel文件 |
-- 作者:有点蓝 -- 发布时间:2020/5/29 8:46:00 -- 把文件放到项目的Attachments目录里,我这样测试没有问题 If e.Path.StartsWith("Reports\\") e.Resp Select Case e.Path Case "Reports\\table1.htm" Dim app As New MSExcel.Application Dim wb As MSExcel.Workbook = app.WorkBooks.Open(ProjectPath & "Attachments\\j48ck01.xlsx") \'VBA代码 e.WriteExcelAsHTML(wb) Case Else e.AsReportServer("Reports\\") End Select End If AsReportServer看起来没有意义,实际上你删除这行代码的话,客户端不会显示任何内容,这是因为Excel报表转换成网页之后,并非只有一个单一的网页文件,还会生成一系列的辅助文件,需要通过AsReportServer方法将这些辅助文件发送给客户端。 我们也无需考虑多线程以及临时文件的处理,Foxtable会自动完成这些工作。 需要注意的是: AsReportServer的参数就是约定的报表目录,必须和第一行指定的报表目录相同,报表目录也必须是专用的,不能再用于访问其他网页。 |
-- 作者:hongsejiyi -- 发布时间:2020/5/30 8:05:00 -- 好的老师,我回去试一下! [此贴子已经被作者于2020/5/30 8:06:40编辑过]
|
-- 作者:hongsejiyi -- 发布时间:2020/5/30 22:14:00 -- 可以了,谢谢老师指点! |