0

在 Visual Studio 中,我想说明,如果由于该特定项目上没有可用的数字而导致计算框为空白,则显示为零。

我的计算很简单:

=(ReportItems!textbox21.Value) /
 (ReportItems!textbox19.Value)

为此,我写了一个 IIf 语句:

=IIf(
   IsNothing(ReportItems!textbox21.Value) Or 
     IsNothing(ReportItems!textbox19.Value), 
   0,
   ((ReportItems!textbox21.Value)/(ReportItems!textbox19.Value)))

但是,如果文本框 21 或 19 中有空白,这仍然显示为#Error。见下图。

在此处输入图像描述

谁能建议如何解决这个问题?

4

3 回答 3

0

您可以尝试代替 IsNothing 将值转换为字符串并与 string.empty 进行比较

IsNothing(ReportItems!textbox21.Value)

更改为,

ReportItems!textbox21.Value.ToString() = ""

于 2013-08-07T10:58:19.340 回答
0

你能尝试用 IsNumeric 代替 Isnothing,

=IIf(IsNumeric(ReportItems!textbox21.Value) and IsNumeric(ReportItems!textbox19.Value),((ReportItems!textbox21.Value)/(ReportItems!textbox19.Value)), 0)

于 2013-08-07T09:58:19.370 回答
0

我设法通过插入以下函数来修复它: -

Function Divide(Numerator as Double, Denominator as Double)
If Denominator = 0 Then
Return 0
Else
Return Numerator/Denominator
End If
End Function

然后将我的计算重写为:-

=Code.Divide(ReportItems!textbox21.Value, ReportItems!textbox19.Value)
于 2013-08-07T11:13:47.180 回答