以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]几个单元格求和!  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=31412)

--  作者:sadfox
--  发布时间:2013/4/14 16:57:00
--  [求助]几个单元格求和!

表A第一列第3行的值=第5列第5行+5列第6行+5列第7行+第6列第4行的和

求大神帮忙写下代码!帮忙里找不到这样的列子!

 

[此贴子已经被作者于2013-4-14 16:57:16编辑过]

--  作者:sadfox
--  发布时间:2013/4/14 17:30:00
--  

求大神帮忙写下,实在不会!


--  作者:sadfox
--  发布时间:2013/4/14 19:21:00
--  

Select Case e.DataCol.Name
    Case "单价"
        For i As Integer = 6 To 15
            e.DataTable.DataRows(4)("亏损") = e.DataTable.Compute("Sum(DataRows(i)(单价)")
        Next
End Select

求单价7行到16行的和值,请问为什么不行呢?


--  作者:yyzlxc
--  发布时间:2013/4/14 20:21:00
--  
http://www.foxtable.com/help/index.html?n=0602.htm
--  作者:yyzlxc
--  发布时间:2013/4/14 20:22:00
--  
http://www.foxtable.com/help/index.html?n=0602.htm
--  作者:y2287958
--  发布时间:2013/4/14 20:25:00
--  
Select Case e.DataCol.Name
    Case "第五列","第六列"
        e.DataTable.DataRows(2)("第一列")=e.DataTable.DataRows(4)("第五列")+e.DataTable.DataRows(5)("第五列")+e.DataTable.DataRows(6)("第五列")+e.DataTable.DataRows(3)("第六列")
End Select

--  作者:yyzlxc
--  发布时间:2013/4/14 20:27:00
--  
概念模糊,是数据库,不是excel。
--  作者:sadfox
--  发布时间:2013/4/14 20:59:00
--  
哎!我还以为能简便点呢!
--  作者:jianjingmaoyi
--  发布时间:2013/4/14 21:00:00
--  
仿右下角计算:

If Forms("窗口1").Opened Then
    Dim Sum,Average,Count As Double
    With CurrentTable
        Sum = CurrentTable.Aggregate(AggregateEnum.Sum, .TopRow, .LeftCol, .BottomRow, .RightCol)
        Average = CurrentTable.Aggregate(AggregateEnum.Average, .TopRow, .LeftCol, .BottomRow, .RightCol)
        Count = CurrentTable.Aggregate(AggregateEnum.Count, .TopRow, .LeftCol, .BottomRow, .RightCol)
    End With
    Forms("窗口1").Controls("Label1").text ="    累计:" & Cstr(sum) & "    平均:" & Cstr(Average) & "    计数:"  & Cstr(Count) & " "
End If


表事件: AfterSelRangeChange

--  作者:sadfox
--  发布时间:2013/4/14 21:40:00
--  
以下是引用jianjingmaoyi在2013-4-14 21:00:00的发言:
仿右下角计算:

If Forms("窗口1").Opened Then
    Dim Sum,Average,Count As Double
    With CurrentTable
        Sum = CurrentTable.Aggregate(AggregateEnum.Sum, .TopRow, .LeftCol, .BottomRow, .RightCol)
        Average = CurrentTable.Aggregate(AggregateEnum.Average, .TopRow, .LeftCol, .BottomRow, .RightCol)
        Count = CurrentTable.Aggregate(AggregateEnum.Count, .TopRow, .LeftCol, .BottomRow, .RightCol)
    End With
    Forms("窗口1").Controls("Label1").text ="    累计:" & Cstr(sum) & "    平均:" & Cstr(Average) & "    计数:"  & Cstr(Count) & " "
End If


表事件: AfterSelRangeChange
 
看不懂是什么意思,我是用一个一个+的办法!