小编Jok*_*oku的帖子

为什么 VBA 和 Excel 在两个单元格是否相等方面存在分歧?

我正在尝试比较表中的两个单元格:

桌子

使用公式计算“MR”列=ABS([@Value]-A1)以确定“值”列的移动极差。“值”列中的值未四舍五入。“MR”列(B3 和 B4)中突出显示的单元格是相等的。我可以将公式输入=B3=B4到单元格中,Excel 会显示 B3 等于 B4。

但是当我在VBA中比较它们时,VBA说B4大于B3。我可以选择单元格 B3 并在“立即窗口”中输入以下内容? selection.value = selection.offset(1).value。该语句的评估结果为 false。

我尝试从公式中删除绝对值,认为这可能与它有关,但 VBA 仍然说它们不相等。

我尝试添加另一行,其中 Value=1.78,因此 MR=0.18。有趣的是,新行(B5)中的 MR等于B3,但不等于B4。

然后我尝试增加 A4 的小数以匹配其他值,现在 VBA 说它们相等。但是当我将绝对值添加回公式时,VBA 再次表示它们不相等。我再次删除了绝对值,现在 VBA 说它们相等。

为什么 VBA 告诉我单元格不相等,而 Excel 却说它们相等?今后如何通过 VBA 可靠地处理这种情况?

excel vba excel-365

6
推荐指数
1
解决办法
577
查看次数

标签 统计

excel ×1

excel-365 ×1

vba ×1