我想为工作表中列的非空单元格上色。 我更喜欢使用条件格式
当我不使用vba进行设置时,它看起来像:
我尝试过
.Columns(7).FormatConditions.Add(Type:=xlExpression,_
Formula1:="=G:G<> """"").Interior.Color = MyFormating
范围还可以,但是公式不起作用
答案 0 :(得分:1)
尝试:.Columns(7).FormatConditions.Add(Type:=xlExpression,_ Formula1:="=G1<> """"").Interior.Color = MyFormating
简要说明:
条件格式将假定提供的公式适用于该条件适用的范围中的第一个单元格(左上)。然后,Excel将调整每个单元格的公式。 (只要引用不是绝对的)
因此,如果您的条件适用于范围G:G
,Excel将使用以下条件公式:
对于G1
:.Columns(7).FormatConditions.Add(Type:=xlExpression,_ Formula1:="=G1<> """"").Interior.Color = MyFormating
对于G2
:.Columns(7).FormatConditions.Add(Type:=xlExpression,_ Formula1:="=G2<> """"").Interior.Color = MyFormating
对于G3
:.Columns(7).FormatConditions.Add(Type:=xlExpression,_ Formula1:="=G3<> """"").Interior.Color = MyFormating
以此类推。
这在两个方向上都适用,因此,如果将条件应用于多个列(例如G:L
),则会得到:
对于H1:
.Columns(7).FormatConditions.Add(Type:=xlExpression,_ Formula1:="=H1<> """"").Interior.Color = MyFormating
对于I1
:
.Columns(7).FormatConditions.Add(Type:=xlExpression,_ Formula1:="=I1<> """"").Interior.Color = MyFormating
以此类推