【问题标题】:Excel Conditional Formatting and Rounding IssuesExcel 条件格式和舍入问题
【发布时间】:2018-06-19 18:34:25
【问题描述】:

我正在尝试找到一种方法,当特定单元格不等于另一个单元格时,使用 excel 格式显示红色。但是,由于 excel 的舍入方式,有时值会相差两个或三个数字(例如:593=594、593=592)。如果单元格的值非常接近目标单元格,它不会导致单元格被格式化为红色。无论如何,这是我正在使用的简单公式以及示例:

=I3<>F3
EX:

**I**    **F**
593       594

基本上 F 单元格将以红色突出显示,但由于差异可以忽略不计, 我不想突出红色。最多,我希望有超过 3 的差异,其中单元格不会突出显示红色。

【问题讨论】:

  • =ROUND(I3,4)&lt;&gt;ROUND(F3,4) 例如。第二个参数是数字精度。

标签: excel excel-formula vba


【解决方案1】:

您应该考虑两个数字之间的绝对差异。如果它在给定的范围内,这是可以接受的,你可以认为它们是相等的。因此,这是您需要的公式:

=ABS(I3-F3)>0,5 '0.5 if you are using "." as a decimal separator

它将 233.4 和 233.6 视为相似的值。 MSDN ABS


一般来说,如果您在 Excel 中编写 =ABS(I3-F3)&gt;0,5,它的计算结果应为 TRUEFALSE。如果不是,则可能是逗号有问题,因此将逗号更改为一个点 - .

【讨论】:

  • 它没有用。例如对于值:456 和 381
  • 你为什么放0,5
  • @mikerosd - 所有低于0.5 的值都将被视为相等。您可以输入0.2 或任何适合您的内容。
  • @mikerosd 您可能需要输入 =ABS(I3-F3)&gt;0.5 而不是 =ABS(I3-F3)&gt;0,5,具体取决于您拥有的 Excel 版本。
  • 对,但是当差异更大时它不会突出显示红色,其中 456 和 381 相差甚远
猜你喜欢
  • 1970-01-01
  • 2015-04-20
  • 2015-11-05
  • 1970-01-01
  • 1970-01-01
  • 2020-04-13
  • 1970-01-01
  • 2014-05-28
相关资源
最近更新 更多