如何在使用Excel VBA条件格式时突出显示单元格?

好的,所以我卡住了,并会感谢任何帮助或build议。

我试图强调符合两个条件的细胞。 也就是说,在这种特殊情况下,如果一个单元格中的绝对值大于3,并且这个相同的绝对值大于相邻单元格中的另一个值,那么该单元格将被突出显示。 例如,我的数据如下所示:

-1.2,1.71,6.26,10.2,3.3,0.4 4 -4

所以如果左边的六个值中的任何一个的绝对值大于3并且也大于四(相邻的四个右边的值),则它们被突出显示。 相邻的值将会改变,而不总是四。 我需要在VBA中这样做,我希望代码能够以这样一种方式工作,即当我移动到与上面类似的另一行数据时,两个条件都被testing,并且正确的值被突出显示。 所以这就是我在VBA中所写的。

Selection.FormatConditions.Delete Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _ "=AND(ABS(RC) >3,ABS(RC) >RC[9])" Selection.FormatConditions(1).Interior.ColorIndex = 45 

问题:

我正在使用R1C1格式,因为我希望在将此代码应用到另一行数据时自动更新它。 但是目前这个代码只是强调了10.2,而不是6.26。 我认为,如果我把代码保留为ABS(RC),这将引用当前的单元格值? 请指教。 另外,数字4(相邻单元)是从第一个值-1.2开始的九列,因此我写了RC [9]。

从我所了解的你试图改变参考1条件与每个细胞,但保持第二个条件的参考(检查每个单元格的值,并检查其值固定的最后一个单元格)。

我用了

 Sub highlight() Selection.FormatConditions.Delete Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _ "=AND(ABS(RC) >3,ABS(RC) > abs(indirect(address(" & Selection.Row & "," & _ (Selection.Column + Selection.Columns.Count - 1) & "))))" Selection.FormatConditions(1).Interior.ColorIndex = 45 End Sub 

第一我select范围A1:H1(这是我保持你的号码)然后我运行这个macros,我最终6.26和10.2突出显示。