以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  数据变化  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=170435)

--  作者:透明人生
--  发布时间:2021/7/26 17:11:00
--  数据变化
判断一个单元格数据是否有变化,应该怎么写?
比如列A中有一个单元格中的数值是10,把10修改为9,怎么判断这个一单元格的值有变化。

If e.DataRow("A").oldValue <> e.DataRow("B").NewValue Then

这个代码有错。
[此贴子已经被作者于2021/7/26 17:17:35编辑过]

--  作者:有点蓝
--  发布时间:2021/7/26 17:39:00
--  
If e.oldValue <> e.NewValue Then

如果是datacolchanged事件,没有必要判断,因为肯定是有变化才会触发这个事件

--  作者:透明人生
--  发布时间:2021/7/26 17:51:00
--  
要判断固定指定的列,如果有变化的话,要进行记录变化,不是指定的列变化,就不进行记录
--  作者:有点蓝
--  发布时间:2021/7/26 20:21:00
--  

DataColChanged

某一列的内容被更改后执行,此时列的内容已经是更改后的值。

e参数属性:

DataTable:返回发生数据更改的数据表。
DataRow:  返回发生数据更改的数据行。
DataCol:  返回发生数据更改的数据列。
NewValue: Object类型,表示新的值。
OldValue: Object类型,表示旧的值


--  作者:透明人生
--  发布时间:2021/7/28 22:02:00
--  
这代码错在哪儿?

If e.DataCol.Name = "通知_次数" Then 
If e.oldValue <> e.NewValue Then
e.DataRow("通知_时间") =  Date.Today.now 
End If
End If

--  作者:有点蓝
--  发布时间:2021/7/29 8:42:00
--  
代码没有问题
--  作者:透明人生
--  发布时间:2021/7/29 16:25:00
--  
代码没起作用
--  作者:有点蓝
--  发布时间:2021/7/29 16:36:00
--  
请上传实例说明