以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  报错!!  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=153681)

--  作者:puresky
--  发布时间:2020/8/19 14:02:00
--  报错!!
如图:不知什么原因?在执行了Syscmd.Table.delete() 之后出现。
--  作者:puresky
--  发布时间:2020/8/19 14:03:00
--  
报错截图
--  作者:有点蓝
--  发布时间:2020/8/19 14:05:00
--  
图呢?http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=78
--  作者:puresky
--  发布时间:2020/8/19 15:20:00
--  
以下是引用puresky在2020/8/19 14:03:00的发言:
报错截图


图片点击可在新窗口打开查看此主题相关图片如下:wx20200819-132032@2xyyy.png
图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2020/8/19 15:25:00
--  
4楼错误提示的事件代码发上来看看
--  作者:puresky
--  发布时间:2020/8/19 15:39:00
--  
For Each dt As DataTable In DataTables If dt.Type = 1 Or dt.Type = 3 Then If dt.name <> "表A" Then Dim Builder As New ADOXBuilder Builder.Open() Builder.DeleteTable(dt.name) Builder.Close() End If ElseIf dt.Type = 2 Or dt.Type = 4 Then MainTable = Tables(dt.name) Syscmd.Table.delete() End If Next
--  作者:有点蓝
--  发布时间:2020/8/19 15:55:00
--  
麻烦发帖内容请在设计模式编辑,不要在代码模式编辑!

要倒序处理
For i As Integer = DataTables.Count - 1 To 0 Step -1
    Dim dt As DataTable = DataTables(i)
    If dt.Type = 1 Or dt.Type = 3 Then
        If dt.name = "表A" Then
            Dim Builder As New ADOXBuilder
            Builder.Open()
            Builder.DeleteTable(dt.name)
            Builder.Close()
        End If
    ElseIf dt.Type = 2 Or dt.Type = 4 Then
        MainTable = Tables(dt.name)
        Syscmd.Table.delete()
    End If
Next
[此贴子已经被作者于2020/8/19 15:54:48编辑过]

--  作者:puresky
--  发布时间:2020/8/19 16:36:00
--  回复:(有点蓝)麻烦发帖内容请在设计模式编辑,不要...
非常感谢,狐爸就是狐爸,威武!!!我不知道什么代码编辑模式,哪里可以切换或者设置,我放上去的代码,都挤在一起了,超级难看,难为工程师了。谢谢您!
--  作者:有点蓝
--  发布时间:2020/8/19 16:47:00
--  
图片点击可在新窗口打开查看