Excel VBA FormatCondiitons для нескольких условий

Я новичок в vba, и я был смущен тем, как отформатировать диапазон на основе нескольких условий. Например, я хочу выделить ячейки из столбцов (a: g), только если их значение меньше 0 И если значение в их соответствующей строке в столбце H содержит строку «да» или «нет». Код, который я написал для выполнения этой функции, не работает, но выглядит так.

Columns("A:G").Select Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _ "=AND(OR($H1 = ""YES"", $H1 = ""NO""),Columns(A,G) < 0)" Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority With Selection.FormatConditions(1).Interior .PatternColorIndex = xlAutomatic .Color = 120000 .TintAndShade = 0 End With Selection.FormatConditions(1).StopIfTrue = False 

Может ли кто-нибудь указать мне в правильном направлении? Благодаря!

Попробуйте,

 With Worksheets("sheet2").Columns("A:G") .FormatConditions.Delete With .FormatConditions.Add(Type:=xlExpression, _ Formula1:="=AND(OR($H1=""yes"", $H1=""no""), $G1<0, $A1<0)") .Interior.Color = 120000 .StopIfTrue = False End With End With 

Перечитав свое оригинальное повествование, я считаю, что это может быть лучшей формулой.

 Formula1:="=AND(OR($H1=""yes"", $H1=""no""), A1<0") 
Давайте будем гением компьютера.