以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]新增行时自动携带上一行的数值 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=1027) |
||||
-- 作者:t_fs -- 发布时间:2008/10/31 10:33:00 -- [求助]新增行时自动携带上一行的数值 新增行时自动携带上一行的数值,类似易表中cell(row-1,col), 如何实现? 是在表属性中的DataRowAdding事件中,写入代码吗?怎样写,请帮助一下,谢谢! |
||||
-- 作者:狐狸爸爸 -- 发布时间:2008/10/31 10:50:00 -- 如果要整行复制: End With Dim ColNames() As String = {"第一列","第二列","第三列","第四列"} Dim dr As Row = Tables("表A").Current If dr Is Nothing Then Return End If For Each ColName As String In ColNames e.DataRow(ColName) = dr(ColName) Next
|
||||
-- 作者:czy -- 发布时间:2008/10/31 10:55:00 -- 现在有默认值啊,可以在列属性默认值中设置。 DataRowAdding事件代码,这样行吗? e.DataRow("列名") = CurrentTable.Rows(CurrentTable.Rows.Count - 1)("列名") |
||||
-- 作者:狐狸爸爸 -- 发布时间:2008/10/31 11:20:00 -- 如果只是复制一列,就用c版的代码吧 |
||||
-- 作者:t_fs -- 发布时间:2008/10/31 11:57:00 -- 谢谢了!! |
||||
-- 作者:t_fs -- 发布时间:2008/10/31 12:51:00 -- 现在有默认值啊,可以在列属性默认值中设置。 e.DataRow("列名") = CurrentTable.Rows(CurrentTable.Rows.Count - 1)("列名") 1)经测试,在列属性默认值中设置以上公式,提示错误!如果是日期字段,复制的日期非上一行的日期。 2)在DataRowAdding事件中,加入上述代码,可实现此功能。 |
||||
-- 作者:czy -- 发布时间:2008/10/31 13:49:00 -- 默认值只能定义一些简单的,如Date(),不支持代码。 三楼代码的确只适合放到DataRowAdding事件中。 |
||||
-- 作者:blackzhu -- 发布时间:2008/11/4 18:40:00 -- 以下是引用t_fs在2008-10-31 10:33:00的发言:
新增行时自动携带上一行的数值,类似易表中cell(row-1,col), 如何实现? 是在表属性中的DataRowAdding事件中,写入代码吗?怎样写,请帮助一下,谢谢! 在新增行菜单中,直接克隆行不是更加简单,同样按一下按钮。 |