0

我在报告中使用以下参数作为表达式来输入 1 到 7 之间的数字。如何对这一列求和?

=Parameters!NoofBookingsYear1.Value
Expression: [@NoofBookingsYear1]

数据按季节分组。

4

1 回答 1

0

不幸的是,没有内置的方法可以做到这一点。幸运的是,有代码可以解决限制。您需要一些 VB 代码来汇总您的参数。

对于您的表达式,您需要将所有选定数量的参数发送到求和函数:

=code.SumParam(Join(Parameters!q.Value, ", "))

对于您的代码,您需要解析逗号并添加数字:

Function SumParam(Param as string) as Decimal

Start:
SumParam = SumParam + Val(Left(Param, INSTR(Param, ",") - 1))

Param = Mid(Param, INSTR(Param, ",") + 1, len(Param))

If INSTR(Param, ",") > 0 Then Goto Start 

SumParam = SumParam  + Val(Param)

End Function

我没有任何错误检查,所以如果有一个无效的值,它可能会出错。

于 2015-06-22T16:35:52.023 回答