Как добавить правило для ячеек в Excel? - PullRequest
0 голосов
/ 27 июня 2018

У меня есть набор данных, извлеченных из Hyperion Essbase, в который я хотел бы добавить правило для этих ячеек. Я пробовал условное форматирование, но не получаю то, что хочу.

Например, некоторые ячейки содержат 0.000 или 13.5232, и правило, которое я хочу над ними, - IF(ROUND(ABS(Cell Value),2)<=0.01,0,Cell Value)

Я не уверен, что моя формула не имеет смысла или я не использую условное форматирование правильно. Мне не нужно выделять какие-либо ячейки, я просто хотел бы, чтобы данные в ячейках были округлены, если они соответствуют критериям в моей формуле.

Ответы [ 2 ]

0 голосов
/ 27 июня 2018

По вашему вопросу кажется, что вы хотите использовать условное форматирование, чтобы изменить форматирование чисел (для чисел, абсолютное значение которых округлено до 2 десятичных разрядов <= 0,01, они должны быть отформатированы с 0 десятичными разрядами, то есть, показать как 0). </p>

Этого можно достичь с помощью условного форматирования (VBA не требуется).

  1. Выберите ячейки, к которым вы хотите применить условное форматирование.
  2. Откройте диспетчер правил условного форматирования и создайте new rule.
  3. Выберите Используйте формулу, чтобы определить, какие ячейки форматировать , введите формулу, которая идентифицирует ячейки, которые вы хотите отформатировать (убедитесь, что вы избегаете абсолютных ссылок). add formatting rule
  4. Нажмите кнопку Формат и выберите Число > 0 Десятичные знаки (here)
  5. Нажмите OK 3 раза, чтобы вернуться к электронной таблице, и вы должны увидеть значения, отформатированные по желанию: final data
0 голосов
/ 27 июня 2018

Если вы просто хотите изменить отображаемый числовой формат, тогда это следует сделать.

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, но это не изменит базовое необработанное значение.

...