如何正确地粘贴excel公式

  • 我使A1格等于1.39139
  • 使单元格B1等于1.40596
  • 制作单元格C1 a公式=(A1-B1)*10000
  • 复制单元格C1并将其粘贴到单元格D1中
  • 在单元格E1中,我手动写了计算的实际结果,即-145.7(您可以尝试使用计算器)。

在这里输入图像说明

  • 在单元格F1中,我做了一个if语句来比较E1和F1的结果: =IF(E1=D1,"equal","not equal")
  • 结果是“不相等”。

在这里输入图像说明

**我想知道如何复制和粘贴一个公式,并确保其粘贴结果将完全相同。 请记住,我不想使用=round()公式,因为我需要许多数字的解决scheme,并且我不能对具有不同数字位数的每个单元格使用round()

正如已经指出的那样,这是因为Excel的浮点精度。

你是正确的(1.39139-1.40596)*10000等于-145.7 。 不过,我试着在Excel中input这个内容来看看它实际产生了什么,我发现了以下内容。 如果您突出显示您的单元格C1并在键盘上按F9您将看到Excel实际计算此值为-145.700000000002

我知道你说过你不想使用ROUND但除了完全避免浮点数(即只使用整数)外,我认为ROUND是你唯一的select。

我build议你确定在你的表格中你需要的十进制数字的最大位数是多less,并根据需要将ROUND(<number>,<max digits>)合并到所有的公式中。

即代替使用=(A1-B1)*10000 ,应该input=ROUND((A1-B1)*10000,5) (例如舍入为5位数),这将返回正好为 -145.7的值。 我希望这有助于,或者如果没有别的,我希望这至less揭露了什么是造成这一点。