以文本方式查看主题 - Foxtable(狐表) (http://www.foxtable.com/bbs/index.asp) -- 专家坐堂 (http://www.foxtable.com/bbs/list.asp?boardid=2) ---- [求助]word 报表没反应了 (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=126243) |
-- 作者:Engineer1 -- 发布时间:2018/10/17 13:14:00 -- [求助]word 报表没反应了 换了个电脑,现在单击按钮生成word报表程序假死,文件夹里没生成word 文档,看后台word程序已经启动,请老师看下是什么问题,谢谢!office 是2007 Dim r As Row = Tables("理化检测_table3").Current r("报告日期") = Date.Today() Dim tmfx As String = ProjectPath & "Attachments\\分析报告模板.doc" \'指定模板文件 Dim tmjx As String = ProjectPath & "Attachments\\金相报告模板.doc" Dim tmhg As String = ProjectPath & "Attachments\\化工报告模板.doc" Dim tmxn As String = ProjectPath & "Attachments\\性能报告模板.doc" Dim tmwsjc As String = ProjectPath & "Attachments\\无损检测报告模板.doc" Dim f As String = ProjectPath & "attachments\\Reports\\" & e.form.controls("TextBox9").Text & ".doc" \'指定目标文件 If user.group = "分析室" Then Dim wrtfx As New WordReport(Tables("理化检测_table3"),tmfx,f) \'定义一个WordReport wrtfx.Build() \'逐行生成报表 wrtfx.quit() \'退出报表 ElseIf user.group = "金相室" Then Dim wrtjx As New WordReport(Tables("理化检测_table3"),tmjx,f) wrtjx.Build() wrtjx.quit() ElseIf user.group = "化工室" Then Dim wrthg As New WordReport(Tables("理化检测_table3"),tmhg,f) wrthg.Build() wrthg.quit() ElseIf user.group = "性能室" Then Dim wrtxn As New WordReport(Tables("理化检测_table3"),tmxn,f) wrtxn.Build() wrtxn.quit() ElseIf user.group = "无损检测" Then Dim wrtwsjc As New WordReport(Tables("理化检测_table3"),tmwsjc,f) wrtwsjc.Build() wrtwsjc.quit() End If Forms("检测报告").open Dim wbr As WinForm.WebBrowser = Forms("检测报告").Controls("WebBrowser1") wbr.OfficeToolBar = False Dim file As String file= ProjectPath & "attachments\\Reports\\" & Forms("理化检测").controls("TextBox9").Text & ".doc" If file > "" Then Dim web As Object = wbr.basecontrol web.Navigate(file) Do Until axWebBrowser IsNot Nothing Application.DoEvents Loop Dim oDocument As object = axWebBrowser.Gettype().InvokeMember("Document", System.Reflection.BindingFlags.GetProperty, Nothing, axWebBrowser, Nothing) Dim oApplication As object = axWebBrowser.Gettype().InvokeMember("Application", System.Reflection.BindingFlags.GetProperty, Nothing, oDocument, Nothing) vars("doc") = oDocument End If [此贴子已经被作者于2018/10/17 13:15:18编辑过]
|
-- 作者:有点甜 -- 发布时间:2018/10/17 15:11:00 -- 新建一个项目,新建一个word报表,单独测试,看是否也卡死不能生成。
如果也是卡死,就是你ms office没有安装正确。请安装完整版本的32位的ms office,不要安装绿色版。 |
-- 作者:Engineer1 -- 发布时间:2018/10/17 16:42:00 -- 新建一个试了正常打开 |
-- 作者:有点甜 -- 发布时间:2018/10/17 17:17:00 -- 以下是引用Engineer1在2018/10/17 16:42:00的发言:
新建一个试了正常打开
做一个窗口,加入webbrowser控件,绑定一个doc,看能否显示这个word文档。
如果没有在WebBrowser显示Word报表,而是在一个新的IE窗口显示,那么请双击Foxtable目录下的Office.reg文件,将其添加到注册表中。 |
-- 作者:Engineer1 -- 发布时间:2018/10/17 17:19:00 -- office 是2010完整版32位的,但还是运行不了啊 |
-- 作者:有点甜 -- 发布时间:2018/10/17 17:37:00 -- 做一个窗口,加入webbrowser控件,绑定一个doc,看能否显示这个word文档。
如果没有在WebBrowser显示Word报表,而是在一个新的IE窗口显示,那么请双击Foxtable目录下的Office.reg文件,将其添加到注册表中 |
-- 作者:Engineer1 -- 发布时间:2018/10/17 19:10:00 -- 仍然没显示word,但是报表已经生成,在文件夹里找到了,这样我没法直接修改文档了 |
-- 作者:有点甜 -- 发布时间:2018/10/17 19:11:00 -- 一个窗口,加入webbrowser控件,绑定一个doc,看能否显示这个word文档。
如果没有在WebBrowser显示Word报表,而是在一个新的IE窗口显示,那么请双击Foxtable目录下的Office.reg文件,将其添加到注册表中 |
-- 作者:Engineer1 -- 发布时间:2018/10/17 21:43:00 -- 老师,完全按你说的做个实例都没问题,可还是假死啊 |
-- 作者:有点甜 -- 发布时间:2018/10/17 22:03:00 -- 以下是引用Engineer1在2018/10/17 21:43:00的发言:
老师,完全按你说的做个实例都没问题,可还是假死啊
出错的实例发上来测试。 |