以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]如何判断多个隐藏列的语句 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=99604) |
-- 作者:ltty5200 -- 发布时间:2017/4/22 10:46:00 -- [求助]如何判断多个隐藏列的语句 假如在表A中,有很多列,合计列=第三列+第五列+第七列+第八列+第十列+是十二列+第十五列+....+任意列。在这些用来累加的列中,假如其中几列隐藏了,它们就不进行参与计算,只用显示的列来相加。请教如何编写代码? |
-- 作者:有点蓝 -- 发布时间:2017/4/22 11:45:00 -- 表达式无法判断。 |
-- 作者:ltty5200 -- 发布时间:2017/4/22 13:51:00 -- 我不是用表达式,用代码判断运算 |
-- 作者:有点蓝 -- 发布时间:2017/4/22 14:29:00 -- 参考: Select Case e.DataCol.Name Case "第一列","第二列","第三列","第四列","第五列" Dim cls() As String = {"第一列","第二列","第三列","第四列","第五列"} Dim t As Table = Tables(e.DataTable.Name) Dim sum As Integer = 0 For Each c As String In cls If t.Cols(c).Visible Then sum += e.DataRow(c) End If Next e.DataRow("总计") = sum End Select |
-- 作者:ltty5200 -- 发布时间:2017/4/22 17:23:00 -- 谢谢,我试试 |
-- 作者:ltty5200 -- 发布时间:2017/4/22 17:59:00 -- 感谢老师,问题得到解决。但是有一个bug,就是当算出了结果后,再隐藏几列,数据不会自动更新。如何在隐藏其中几列的时候自动更新合计数? |
-- 作者:有点色 -- 发布时间:2017/4/23 12:45:00 -- 单独做一个按钮计算。隐藏列的时候不会触发任何事件,所以无法自动计算。 |