如果单元格中的第一个字符为“-”,请更改整个行的颜色

时间:2019-12-24 04:03:10

标签: excel vba

如果列A中单元格的第一个字符=“-”,我想更改整个行的颜色

这是我的工作,我成功为行着色,但也为其他行着色,这是A列中单元格的第一个字符<>“-”

CEll A1(-ABS)/////////////////// CEll A2(12345-Surface Import)---->我不希望该行被着色

INotifyPropertyChanged

1 个答案:

答案 0 :(得分:1)

是因为Find还将在字符串中搜索“-”。不一定从字符串的开头开始。

看看这是否对您有帮助,它是一个简单的for循环,它将检查A列中字符串的第一个字母是否为“-”,然后为整行着色。

Sub color()

Dim lastrow As Long
Dim i As Long

lastrow = Range("A" & Rows.Count).End(xlUp).Row    'check the last cell from A that has value

For i = 2 To lastrow                                'start to loop through column A, from second row if maybe you have a header
    If Left(Cells(i, 1).Value, 1) = "-" Then        'check if first charcater is "-"
       Cells(i, 1).EntireRow.Interior.color = RGB(255, 0, 0)   ' if first characther is "-", color entire row
    End If
Next i


End Sub