Привет общению,

Допустим, в ячейке файла Excel я хочу ввести следующую формулу

если (a1> a2, "test1", "test2")

Чего я хочу добиться, так это чтобы шрифты test1 и test2 были разных цветов.

Одним из способов является использование условного форматирования и применение различных правил. Однако мне интересно, есть ли альтернатива - более прямой - путем указания цвета шрифта непосредственно внутри формулы if() или с помощью VBA

заранее спасибо

1 ответ1

2

Это возможно с помощью VBA. Я полагаю, ваша формула находится в ячейке B1

На листе Excel нажмите ALT + F11, чтобы получить доступ к редактору VBA.

Выберите свой лист на левой панели. В правом окне кода выберите « Рабочий лист» в раскрывающемся списке, а затем выберите « Изменить событие» в последующем раскрывающемся списке.

В ней должен быть указан следующий заполнитель подпрограммы.

Private Sub Worksheet_Change(ByVal Target As Range)

End Sub

Поместите следующий код в то же самое.

If Target.Address = "$A$1" Or Target.Address = "$A$2" Then
  If Range("B1").Formula = "=IF(A1>A2,""test1"",""test2"")" Then

        If Range("A1").Value > Range("A2").Value Then
            Range("B1").Font.Color = vbRed
        Else
            Range("B1").Font.Color = vbGreen
        End If

  End If
End If

В приведенном выше примере я использовал стандартные vbRed и vbGreen. Выберите согласно вашему выбору.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .