以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]数据填充(问题已解决,详见2楼代码)  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=16461)

--  作者:VIP用户
--  发布时间:2012/2/14 23:53:00
--  [求助]数据填充(问题已解决,详见2楼代码)

在表B中连续增加多行后,如何将表A的当前行,重复填充到表B的多行中去?

[此贴子已经被作者于2012-2-16 9:41:00编辑过]

--  作者:blackzhu
--  发布时间:2012/2/15 8:00:00
--  

Tables("表B").AddNew(5)  \'在表B增加5行
Dim dt As DataTable = DataTables("表B")  \'定义表B为dt
For Each dr As DataRow In dt.DataRows     \'遍历表B的所有行
    If dr.RowState = DataRowState.Added Then       \'如果遍历行为新增行
        dr("第一列")=Tables("表A").Current("第一列")   \'那么表B的第一列新增行的数据等于表A的当前行
    End If
Next

Datatable("表B").Save  \'保存表A


--  作者:VIP用户
--  发布时间:2012/2/15 22:21:00
--  
以下是引用blackzhu在2012-2-15 8:00:00的发言:

Tables("表B").AddNew(5)  \'在表B增加5行
Dim dt As DataTable = DataTables("表B")  \'定义表B为dt
For Each dr As DataRow In dt.DataRows     \'遍历表B的所有行
    If dr.RowState = DataRowState.Added Then       \'如果遍历行为新增行
        dr("第一列")=Tables("表A").Current("第一列")   \'那么表B的第一列新增行的数据等于表A的当前行
    End If
Next

Datatable("表B").Save  \'保存表A

执行上述代码无效!


--  作者:czy
--  发布时间:2012/2/15 23:26:00
--  
一次性对指定表增加多行,默认焦点在新增的第一行中,此时并无数据,你写填充什么?
--  作者:VIP用户
--  发布时间:2012/2/16 9:33:00
--  
以下是引用VIP用户在2012-2-15 22:21:00的发言:

执行上述代码无效!

2楼代码是有效的,是我自己应用不当导致执行无效。

向2楼致歉,致谢!


--  作者:VIP用户
--  发布时间:2012/2/16 9:36:00
--  
以下是引用czy在2012-2-15 23:26:00的发言:
一次性对指定表增加多行,默认焦点在新增的第一行中,此时并无数据,你写填充什么?

谢谢版主关注,问题已解决,用2楼的代码有效。