以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 【求助】记录表格的编辑过程 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=128657) |
-- 作者:wangjx817 -- 发布时间:2018/12/12 13:45:00 -- 【求助】记录表格的编辑过程 老师,我在表格中加上一列log列,用来记录每次表格中某行编辑过的内容,代码如下:,但是存在一个问题,它只记录最后一次的编辑过程内容,我想记录每次或者该行不同列的编辑过的内容,如何修改代码。 For Each nm As Col In CurrentTable.Cols \'将每次修改的记录在log列中 If e.Col.Name = nm.name Then e.Row("Log") = User.Name & "在" & Date.Now & "修改[" & e.Col.name & "]列中的内容为:\'" & e.Row(e.Col.name) & "\'" End If Next |
-- 作者:y2287958 -- 发布时间:2018/12/12 14:05:00 -- e.Row("Log") += User.Name & "在" & Date.Now & "修改[" & e.Col.name & "]列中的内容为:\'" & e.Row(e.Col.name) & "\'" |
-- 作者:wangjx817 -- 发布时间:2018/12/12 14:25:00 -- 谢谢,老师,实现了效果。 但是为了美观和浏览方便,在该修改行的log列中每次不同时间段修改的过程和内容能够换行记录并在前面加上第几次的序号,如:
1、User.Name & "在" & Date.Now & "修改[" & e.Col.name & "]列中的内容为:\'" & e.Row(e.Col.name) & "\'” 2、User.Name & "在" & Date.Now & "修改[" & e.Col.name & "]列中的内容为:\'" & e.Row(e.Col.name) & "\'" 3、User.Name & "在" & Date.Now & "修改[" & e.Col.name & "]列中的内容为:\'" & e.Row(e.Col.name) & "\'" . . . 如何实现。 |
-- 作者:wangjx817 -- 发布时间:2018/12/12 14:28:00 -- 后面加上vbcrlf,这个没问题,就是前面的序号如何添加不清楚,请老师指点。 |
-- 作者:y2287958 -- 发布时间:2018/12/12 14:33:00 -- 参考lines |
-- 作者:有点甜 -- 发布时间:2018/12/12 14:35:00 -- Dim ls As List(Of String) = e.Row.DataRow.lines("log") ls.add(ls.count+1 & "," & User.Name & "在" & Date.Now & "修改[" & e.Col.name & "]列中的内容为:\'" & e.Row(e.Col.name) & "\'" ) e.Row.DataRow.lines("log") = ls |
-- 作者:wangjx817 -- 发布时间:2018/12/12 15:20:00 -- OK,谢谢老师的耐心指导。 |