如何在Excel中向单元格添加规则?

时间:2018-06-27 14:13:49

标签: excel function formula hyperion essbase

我有一组从Hyperion Essbase中提取的数据,我想在这些数据上添加一条规则。我已经尝试过条件格式设置,但没有得到想要的内容。

例如,某些单元格包含0.00013.5232,而我要对它们执行的规则是IF(ROUND(ABS(Cell Value),2)<=0.01,0,Cell Value)

我不确定我的公式是没有意义的公式还是我没有正确使用条件格式。我不需要突出显示任何单元格,只要它们符合我的公式中的条件,我只想将单元格中的数据四舍五入。

2 个答案:

答案 0 :(得分:0)

如果您只想更改显示的数字格式,则应该这样做。

Sub cfrZeroes()
    With Worksheets("sheet2").UsedRange.Cells
        .FormatConditions.Delete
        .FormatConditions.Add Type:=xlExpression, _
          Formula1:="=ROUND(ABS(" & .Cells(1).Address(0, 0) & "),2)<=0.01"
        .FormatConditions(.FormatConditions.Count).NumberFormat = "\0"
    End With
End Sub

这会将-0.015更改为0.015,看起来像0,但不会更改基础原始值。

答案 1 :(得分:0)

从您的问题来看,您似乎想使用条件格式来更改数字的格式设置(对于绝对值(四舍五入到小数点后两位)小于等于0.01的数字,应将其格式化为小数点后0位,即显示为0)。

这完全可以通过条件格式实现(不需要VBA)。

  1. 选择要应用条件格式的单元格。
  2. 打开条件格式规则管理器,然后创建一个new rule
  3. 选择使用公式来确定要格式化的单元格,然后输入用于标识要设置格式的单元格的公式(确保避开绝对引用)。 add formatting rule
  4. 单击格式按钮,然后选择数字> 0个小数位here
  5. 单击“确定” 3次以返回到电子表格,您将看到所需格式的值:final data