匹配函数不匹配公式中的数字

Match function not matching number from formula

在 excel 中,匹配函数无法在包含它的范围内找到匹配项。

由于我们无法附加工作簿,请按照以下步骤创建 MRE:

  1. A1=.99
  2. B1=1-A1
  3. C1=匹配(.01,B1:B2,0)

对我来说,C1 是#NA。它向你表明了吗?如果是这样,为什么?如果没有,你能想到为什么它会适合我吗?

尝试过:

  1. 制作新工作簿
  2. 测试 B1=.01 -> TRUE
  3. 硬编码 B1=.01 -> 匹配有效
  4. 将 B1 与自身匹配 -> 有效
  5. 将 B1 与包含硬编码 .01 的单元格匹配 -> 失败
  6. 谷歌搜索 -> 很多人不知道 0= 完全匹配或忘记检查字符串中的空格。
  7. 更改 A1 -> 非常有趣,对 .9、.8 和 .7 失败,但对 .6 有效(发现 .4)。

计算机以 2 为基数而不是以 10 为基数运行,因此在进行浮点运算时,有些数字无法表示,即使它们以 10 为基数看起来非常好。您看到的是 0.01,但是 Excel 实际上已经计算出 0.0100000000000000000000x 或类似的东西。

如果你想让你的示例工作,请尝试将 B1 设置为

=ROUND(1-A1,2)

或者,如果您知道您只需要两位数的小数精度(假设您匹配到 0.01),您可以通过以下方式完全避免浮点数:

=(100-(100*A1))/100