请高手帮我看看我book1最后一行公式哪里错了?我想将非合同类+营销类合同的筛选结果相加。。。但是生成报表的数好像变成跟没筛选的结果一样了,求解~~~~谢谢!
个人觉得这种复杂的计算用mark更好:
http://www.foxtable.com/help/topics/1396.htm
Dim Book As New XLS.Book("c:\book5.xls")
Book.Marks.Add("总计",DataTables("订单").Compute("Sum(数量)", "产品 = 'PD01'"))
Book.Build()
Book.Save("c:\reports\test.xls")
Dim Proc As New Process
Proc.File = "c:\reports\test.xls"
Proc.Start()
用mark不知道怎么实现将两个表的数据相加的功能
比如将标记aaa的取值设为:e.Book.Marks.Add("aaa",Tables("营销类合同").Compute("Sum(合同金额)", "费用科目_一级科目 = '媒介推广费' and 月度 = " & Tables("营销类合同").text(0,3)) ),只能计算营销类合同的筛选结果,不知道怎样将非合同类的加进来计算。
另如果这样设置的话,就要在两张表分别筛选后才能生成筛选后的数据,而且如果不筛选的话,无法统计全部数据。。
由于刚接触FOXTABLE时间不长,所以思路还不是很清晰和完整,请狐爸爸指导。。。
mark更加灵活,任意多个表都行:
Dim Book As New XLS.Book("c:\book5.xls")
Dim v as Doube
v= DataTables("订单").Compute("Sum(数量)", "产品 = 'PD01'") + DataTables("订单2").Compute("Sum(数量)", "产品 = 'PD01'") + DataTables("订单3").Compute("Sum(数量)", "产品 = 'PD01'")
Book.Marks.Add("总计",v)
Book.Build()
Book.Save("c:\reports\test.xls")
Dim Proc As New Process
Proc.File = "c:\reports\test.xls"
Proc.Start()