以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  报错后窗口变空白  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=149208)

--  作者:gfj7126
--  发布时间:2020/4/26 14:03:00
--  报错后窗口变空白

求助:

      在合并EXCEL数据过程中,当发生错误(比如数据类型不匹配,或找不到相关记录等)。

运行会停止,这时关闭窗口后,再重新打开窗口,窗口会显示为空白,TABLE表都是空白,

我打开DATATABLE表,显示也是空白,无表格式样。

我使用以下代码想重新加载,但也无效。请问有什么办法不重新启动程序,可以让界面恢复正常吗?

Dim t As Table = Tables("未交订单表")
Dim tm As Table = Tables("送货计划明细表")
t.StopRedraw()
tm.StopRedraw()
DataTables("未交订单表").LoadFilter = ""
DataTables("未交订单表").load
DataTables("送货计划明细表").LoadFilter = ""
DataTables("送货计划明细表").load
t.ResumeRedraw()
tm.ResumeRedraw()

 


--  作者:有点蓝
--  发布时间:2020/4/26 14:34:00
--  
应该是出错后没有调用ResumeRedraw导致。到命令窗口执行

Tables("未交订单表").ResumeRedraw()
Tables("送货计划明细表").ResumeRedraw()
--  作者:gfj7126
--  发布时间:2020/4/26 14:52:00
--  

的确是这个问题,如何在发生这个错误时,自动运行以下代码呢?

Tables("未交订单表").ResumeRedraw()

Tables("送货计划明细表").ResumeRedraw()


--  作者:有点蓝
--  发布时间:2020/4/26 14:55:00
--  
试试:http://www.foxtable.com/webhelp/topics/2070.htm

Dim t As Table = Tables("未交订单表")
Dim tm As Table = Tables("送货计划明细表")
t.StopRedraw()
tm.StopRedraw()
Try
    导入代码
    t.ResumeRedraw()
    tm.ResumeRedraw()
Catch ex As Exception
    t.ResumeRedraw()
    tm.ResumeRedraw()
End Try