VB在文本上使用Excel条件格式

时间:2017-01-16 16:43:34

标签: excel vb.net vba

使用VB 2010, 我正在尝试将excel文件转换为VB并且正在努力使用TextOperator:= xlContains的条件格式化行

我已经完成了其他大部分工作,即Excel.XlFormatConditionType。

Dim r As Excel.Range 
R = oSheet.Range("A" & CStr(FirstEmptyInColA) & ":A" & CStr(lastRow)).SpecialCells(Excel.XlCellType.xlCellTypeVisible)

          For A = 0 To UBound(AgentNames)

                BColour = BColour + 1
                If BColour > 10 Then BColour = 3
                With r
                    .FormatConditions.Add(Type:=Excel.XlFormatConditionType.xlTextString, String:=AgentNames(A), TextOperator:=xlContains)
                    .FormatConditions(r.FormatConditions.Count).SetFirstPriority()
                    With .FormatConditions(1)
                        .Interior.PatternColorIndex = oWorkbook.xlAutomatic
                        .Interior.ColorIndex = BColour
                        If BColour = 5 Or BColour = 7 Or BColour = 9 Then
                            .Font.ColorIndex = 2
                        End If
                    End With
                    .FormatConditions(1).StopIfTrue = False
                End With
            Next A
            r = Nothing

2 个答案:

答案 0 :(得分:1)

应该是Excel.XlContainsOperator.xlContains

答案 1 :(得分:1)

查看FormatCondition.TextOperator documentation

  

返回或设置XlContainsOperator枚举的一个常量,指定由条件格式设置规则执行的文本搜索。

您的代码就是这样:

TextOperator:=Excel.XlContainsOperator.xlContains

作为备注,XlContainsOperator包含以下可以使用的运算符:

enter image description here