2014-02-13 25 views
0

请检阅我下面的语句:#错误的IIF-语句中使用行数(如果Countrows = 0)

=Iif(Cint(CountRows("TdsTemp")) > 0, 
    //Show some data here 
,CStr("No Results")) 

这是我的文本框后面的表达。

* 案例1:* 如果我的TdsTemp包含多于一行,则会显示正确的数据。

* 案例2:* 如果我TdsTemp包含0行,然后我得到以下味精#Error而不是预期的NoResults

我似乎无法弄清楚我在这里做错了什么。为什么我的false-part无法正常工作?如果您有任何其他方法来检查tds中是否有内容,请分享。

谢谢。

注意:在执行上面提到的Iif语句之前,“在此显示一些数据”部分工作正常。

更新:设置Cint(CountRows("TdsTemp"))作为文本框的表达确实产生的desireably结果

+0

尝试删除'cstr(“No Results”)'并且只显示''No Results“' – KrazzyNefarious

+0

相同的结果。即使在CountRows周围删除Cint()也不能解决问题 – User999999

+0

该报告列的数据类型是什么?你在报告中格式化吗? – KrazzyNefarious

回答

0

尝试使用ISNOTHING功能,改变场相应&使用它总是具有一定的值列时记录计数> 0

= IIF (ISNothing(Fields!PKey.Value),“No Result”,//在这里显示一些数据)

+0

刚刚尝试过。我仍然得到#Error – User999999