Excel VBA,IF语句无法检查变量是否匹配

Excel VBA,IF语句无法检查变量是否匹配,excel,vba,variables,Excel,Vba,Variables,我试图将编程计算与现有的合计行进行比较,我将所有变量声明为Double,但是一旦设置,类型将显示为“Variant/Double”,IF语句将不将它们视为匹配值。 我希望我解释得足够好!请帮忙:) 编辑:更正声明后: IF语句仍然失败这是出于设计。如果要将所有声明为double,请使用以下方法: Public debitTot as Double, creditTot as Double, debit as Double, credit as Double 比较Double(或任何浮点变量)的

我试图将编程计算与现有的合计行进行比较,我将所有变量声明为Double,但是一旦设置,类型将显示为“Variant/Double”,IF语句将不将它们视为匹配值。 我希望我解释得足够好!请帮忙:)

编辑:更正声明后:
IF语句仍然失败

这是出于设计。如果要将所有声明为double,请使用以下方法:

Public debitTot as Double, creditTot as Double, debit as Double, credit as Double
比较
Double
(或任何浮点变量)的方法是使用
Round()
函数:

如果是四舍五入(借记,2)四舍五入(贷记,2),则


这并没有将它们分别定义为
双倍
-您必须这样做:
公共借记为双倍,贷记为双倍
-等等-似乎应该这样做,对吗?关于编辑:可能由于浮点错误而“失败”。我希望
应用程序。在比较之前,将
四舍五入到有效数字。@BigBen@braX也谢谢你,这看起来很直观!:应用程序。舍入修复了IF语句!