2017-10-30 1 views
0

다음 코드는 하나의 문제점을 제외하고는 작동합니다. H 열의 값을 인식하고 해당 행의 H 열에 40 이상을 포함하지 않는 행을 강조 표시합니다. 그러나 아래 코드는 실제로 첫 번째 숫자가 4 또는 위대한 숫자로 찾고, 숫자 1, 2 또는 열 H의 첫 번째 숫자로 시작하는 행을 강조 표시합니다. 따라서 열 H 값은 100입니다..Value의 첫 번째 숫자 만 인식하는 코드

Sub color40() 

Sheets("40+").Select 

Lastrow = Cells(Rows.Count, 1).End(xlUp).Row 
For i = 2 To Lastrow 
If Worksheets("40+").Cells(i, 8).Value < "40" Then 
    Range(Cells(i, 2), Cells(i, 8)).Interior.color = RGB(160, 140, 150) 

End If 
Next i 

End Sub 
+1

죄송합니다. 귀하의 궁금한 점은 무엇입니까? 읽어보십시오. [How to Ask] (https://stackoverflow.com/help/how-to-ask) –

답변

1

"40"은 텍스트이고 40은 숫자입니다. 숫자를 따옴표로 묶으면 숫자를 평가하지 않으며 문자열로 평가합니다. 이 시도 :

Sub color40() 

Sheets("40+").Select 

Lastrow = Cells(Rows.Count, 1).End(xlUp).Row 
For i = 2 To Lastrow 
If Cells(i, 8).Value < 40 Then 
    Range(Cells(i, 2), Cells(i, 8)).Interior.color = RGB(160, 140, 150) 

End If 
Next i 

End Sub 
0

을 당신이 LEFT 기능을 사용하여 작업을 수행 할 수 있습니다 단 1 자리를 평가합니다.

구문 :

LEFT(text, [number_of_characters]) 

예 :

If LEFT(Worksheets("40+").Cells(i, 8).Value, 1) < 4 Then 
    Range(Cells(i, 2), Cells(i, 8)).Interior.color = RGB(160, 140, 150) 
End If 

당신이 평가하는 데 필요한 값을 변경해야합니다.