以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]求助代码修改?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=115645)

--  作者:hrw68529
--  发布时间:2018/3/11 10:43:00
--  [求助]求助代码修改?
下述一段代码主要想:"季度"列内容为空时,“季度合计”列不计算,当选择“季度”列内容(第一季度、第二季度、第三季度、第四季度)时,相应的月份显示,其他月份列不显示,则“季度合计”列计算只显示的列,当把“季度”列清空时,“季度合计”为空。如何修改,弄了一上午,弄不好,请专家指导。
代码:
Select Case e.DataCol.Name
    Case "月考核奖金_1","月考核奖金_2","月考核奖金_3","月考核奖金_4","月考核奖金_5","月考核奖金_6","月考核奖金_7","月考核奖金_8","月考核奖金_9","月考核奖金_10","月考核奖金_11","月考核奖金_12"
        Dim cls() As String = {"月考核奖金_1","月考核奖金_2","月考核奖金_3","月考核奖金_4","月考核奖金_5","月考核奖金_6","月考核奖金_7","月考核奖金_8","月考核奖金_9","月考核奖金_10","月考核奖金_11","月考核奖金_12"}
        Dim t As Table = Tables(e.DataTable.Name)
        Dim sum As Integer = 0
        For Each c As String In cls
            If e.DataRow.IsNull("季度") Then
                sum += 0
            ElseIf t.Cols(c).Visible AndAlso  e.DataRow("季度") <> Nothing  Then
                sum += e.DataRow(c)
            End If
        Next
        e.DataRow("季度合计") = sum
End Select


--  作者:hrw68529
--  发布时间:2018/3/11 11:23:00
--  
已解决,Case “季度”,”"月考核奖金_1","月考核奖金_2","月考核奖金_3","月考核奖金_4","月考核奖金_5","月考核奖金_6","月考核奖金_7","月考核奖金_8","月考核奖金_9","月考核奖金_10","月考核奖金_11","月考核奖金_12"

增加这个季度就可以了