以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 平均值内部函数 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=128574) |
|
-- 作者:qaz17909 -- 发布时间:2018/12/10 20:42:00 -- 平均值内部函数 想做一个平均值的内部函数,想应用在单元格,当某个单元格为空的时候,不列入进行计算平均值,例如三个单元格,分别是2,2和空值,平均值想得到2,但现在得到的是1.33 如下代码如何改进? Dim Sum As Double Dim Count As Integer For i As Integer = 0 To Args.Length - 1 If Args(i) IsNot Nothing Then Sum = Sum + Args(i) Count = Count + 1 End If Next If Count > 0 Then Dim Average As Double = Sum/Count Return Average End If |
|
-- 作者:有点蓝 -- 发布时间:2018/12/10 21:03:00 -- 传入函数的是什么值? |
|
-- 作者:qaz17909 -- 发布时间:2018/12/10 21:04:00 -- Dim r As Row = CurrentTable.Current Dim n As Double = Functions.Execute("Average",r("流量A1"),r("流量A2"),r("流量A3")) Output.show(n) 三个单元格是双精度小数
[此贴子已经被作者于2018/12/10 21:18:28编辑过]
|
|
-- 作者:有点蓝 -- 发布时间:2018/12/10 21:24:00 -- 函数 Dim Sum As Double Dim Count As Integer dim r as row = args(0) For i As Integer = 1 To Args.Length - 1 If r.isnull(Args(i)) = false Then Sum = Sum + r(Args(i)) Count = Count + 1 End If Next If Count > 0 Then Dim Average As Double = Sum/Count Return Average End If 调用改为:
|