以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  一个临时表 一个数据表 怎么将临时表的所有行数据复制到数据表中……  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=175125)

--  作者:cnsjroom
--  发布时间:2022/2/21 14:30:00
--  一个临时表 一个数据表 怎么将临时表的所有行数据复制到数据表中……

一个临时表 一个数据表  怎么将临时表的所有行数据复制到数据表中……

 

两个表数据列相同

 

代码如下:

For Each c As Col In Tables("在职与亲属").cols
    output.show(C.name)
    For Each r As Row In Tables("在职及亲属").Rows
        If r IsNot Nothing  Then
            Tables("在职与亲属").AddNew
            Tables("在职与亲属").Current(c.name)=r(c.name)
            \'Output.show(r(c.name))
        End If
    Next
Next

 

当前只能实现一列新增复制  有没有办法实现当前所有行所有列写完之后再写下一行的所有列


--  作者:有点蓝
--  发布时间:2022/2/21 14:35:00
--  
http://www.foxtable.com/webhelp/topics/1533.htm


--  作者:cnsjroom
--  发布时间:2022/2/21 15:02:00
--  回复:(有点蓝)http://www.foxtable.com/webhelp/to...

For Each r As Row In Tables("在职及亲属").Rows
Tables("在职与亲属").StopRedraw
    If r IsNot Nothing  Then
        Dim dr2  As  Row =  Tables("在职与亲属").AddNew()
        For Each dc  As  Col  In  Tables("在职及亲属").Cols
            dr2(dc.Name) = r(dc.name)
        Next
    End If
Next
Tables("在职与亲属").ResumeRedraw
MessageBox.Show("数据复制完毕")

 

为什么停止绘制表  在数据写入完之后   表不恢复绘制呢?


--  作者:有点蓝
--  发布时间:2022/2/21 15:07:00
--  
应该是代码中间出错导致ResumeRedraw没有执行
--  作者:cnsjroom
--  发布时间:2022/2/21 16:37:00
--  回复:(有点蓝)应该是代码中间出错导致ResumeRedraw...

For Each r As Row In Tables("在职及亲属").Rows
Tables("在职与亲属").StopRedraw
    If r IsNot Nothing  Then
        Dim dr2  As  Row =  Tables("在职与亲属").AddNew()
        For Each dc  As  Col  In  Tables("在职及亲属").Cols
            dr2(dc.Name) = r(dc.name)
        Next
    End If
Next
Tables("在职与亲属").ResumeRedraw
MessageBox.Show("数据复制完毕")

红色部分注释掉之后   数据又会写入行


--  作者:有点蓝
--  发布时间:2022/2/21 16:46:00
--  
调换位置
Tables("在职与亲属").StopRedraw
For Each r As Row In Tables("在职及亲属").Rows