如何在TextBox表达式中编写NOT IN
?
我必须检查一些字段值是否属于某些字符串列表,然后再做一些工作。
示例:
Iif(SomeField.Value NOT IN ('Text1', 'Text2'), DoSomething, nothing)
我编写了这样的代码并在预览报告时遇到错误,错误是:
Overload resolution failed because no accessible 'Iif' accepts this number of type arguments
我该怎么做?
答案 0 :(得分:1)
尝试接受字符串数组的这小块自定义代码。只需将其粘贴到报告的报告代码部分即可。
Public Shared Function ValueExists(ByVal arr() as string, checkVal as string)
Dim i As Long
For i = LBound(arr) To UBound(arr)
If arr(i) = checkVal Then
return true
Exit Function
End If
Next i
return false
End Function
用法包括使用Split
函数
=iif(Code.ValueExists(Split("Your,comma,separated,string,in,here",","),"StringYouWantToFind")
,"Your value exists"
,"your value does not exist")
答案 1 :(得分:0)
您可以简单地编写如下代码:
Iif(SomeField.Value <> 'Text1' AND Field.Value <> 'Text2' , DoSomething, nothing)
答案 2 :(得分:0)
我在一份报告中得到了这个:
=iif(join(Parameters!Parameter1.Value,",") like "*" & Fields!Field1.Value & "*","Color1","Color2")
此指令帮助我确定Tablix中单元格的填充颜色,其中: Parameter1是一个多值参数。 “Join”让我有一个字符串,其中包含来自多值参数的所有选定值,例如。 “值1,值2,值3,值4”
Field1是包含Parameter1过滤的值的字段 如果单元格的值包含在参数选择中,则Color1是颜色 别的Color2
运作良好