Excel:使用VBA将条件格式应用于单个列中的空白单元格

时间:2013-12-02 09:45:00

标签: excel vba conditional-formatting

我已将重复的条件格式应用于列AB,AD,AR,AT,BH& BJ跨越一个大约1500行的工作表,但它也突出了空白。

我试图创建一个额外的条件格式,将任何空白更改为白色单元格颜色,因为我找不到从空白单元格中删除条件格式的方法。

我发现此刻突出显示白色单元格的唯一方法是再次使用条件格式,这在我录制宏时非常有效,但是当我重放它时它不会因为整个列变白或者离开空白细胞为红色。

这是附加条件格式的vba代码:

Sub Macro3()    
    Range("I:I,AB:AB,AD:AD,AR:AR,AT:AT,BH:BH,BJ:BJ").Select
    Range("BJ1").Activate
    Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
        "=LEN(TRIM(BJ1))=0"
    Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
    With Selection.FormatConditions(1).Interior
        .PatternColorIndex = xlAutomatic
        .ThemeColor = xlThemeColorDark1
        .TintAndShade = 0
    End With
    Selection.FormatConditions(1).StopIfTrue = False

End Sub

非常感谢帮助,因为我花了很长时间试图找到一个解决方法!

2 个答案:

答案 0 :(得分:1)

尝试为相同的单元格添加另一个公式为isblank=true的过滤器。

答案 1 :(得分:0)

试试这个

Sub Macro3()
    Range("I:I,AB:AB,AD:AD,AR:AR,AT:AT,BH:BH,BJ:BJ").Select
    Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
        "=LEN(TRIM(I1))=0"
    Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
    With Selection.FormatConditions(1).Interior
        .PatternColorIndex = xlAutomatic
        .ThemeColor = xlThemeColorDark1
        .TintAndShade = 0
    End With
    Selection.FormatConditions(1).StopIfTrue = False
End Sub