你们中的任何一个人都可以解释一下循环(For,While)循环如何在这里工作
Public Function SafeConvert(ByVal num As String) As String
Dim S as Integer
For i as Integer = 0 to 2
s += num
next
Return s
End Function
我已经编写了这段代码,但它在这里没有用。
Q27_A_1
SSRS不是添加每个数字,而是仅添加最后一个单元格16 * 3次并显示不正确的结果。
你也可以回答这个问题。
我有一个矩阵,其文本框包含3个值,如果值小于5,如何计算{{1}}的所有值的总和?
答案 0 :(得分:1)
您无需使用任何自定义代码即可实现此目的。如果您确信所有字符串值都是实际数字,则可以在Tablix表达式中使用众多转换函数之一以及sum
来将所有内容添加到一起。
对于整数:
=sum(cint(Fields!B.Value))
对于十进制值:
=sum(cdec(Fields!B.Value))
对于双重值:
=sum(cdbl(Fields!B.Value))
要使用这些表达式,您需要根据数据集向Tablix添加一个组,并将这些表达式放在Group Total
文本框中。
要总结所有小于5的值,您需要在Tablix上创建一个组,并且可以使用sum
函数。但是,在这种情况下,您需要使用0
替换5或以上的任何值,因此它们不会添加到sum
的总和中:
=sum(iif(Fields!Q27_A_1.Value < 5, Fields!Q27_A_1.Value, 0))
答案 1 :(得分:0)
是的,我理解你的Sum函数点来执行这个操作。通过使用Sum函数可以很容易地实现这一点。但我有一个超过5000矩阵盒的巨型报告,我需要申请。所以只想确认自定义代码是否在这里工作,并且在这行代码中有什么错误。
Public Function SafeConvert(ByVal num As String)As String
Dim S as Integer
对于i为Integer = 0到2
s + = num
下
返回s
结束功能
它正在做的只是添加最后一个单元格3次。我想在运行时添加单元格的所有值。