以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  同类数据差值不能过大  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=145354)

--  作者:wangnovel
--  发布时间:2020/1/17 0:22:00
--  同类数据差值不能过大
如图,表中有三列,按列1的值分类,列2中同类的数据,其值如果超过同类数据平均值的10%,则提示id值。比如,13/14/18是同类数据,平均值为15,则(15-13)/15=13%,(18-15)/15=20%,同理,id为5的数据也超过平均值10%,依次提示id为1、3、5的数据,差值过大。
请问,该如何写代码
图片点击可在新窗口打开查看此主题相关图片如下:qq截图20200117000426.png
图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2020/1/17 9:55:00
--  
datacolchanged事件
If e.DataCol.name = "列1" OrElse e.DataCol.name = "列2"
    If e.DataRow.isnull("列1")  OrElse e.DataRow.isnull("列2") Then
        e.DataRow("列3\') = nothing
    else
        dim d as double = e.datatable.compute("Avg(列2)","列1=\'" & e.DataRow("列1")  & "\'")
        If (d - e.DataRow("列2\')) / d > 0.1 then
            e.datarow("列3\') = "差值过大"
        Else
            e.DataRow("列3\') = nothing
        End If
    End If
End If