2015-01-18 3 views
0

안녕하세요. Excel에서 시퀀스 송장 번호를 강조 표시하려고합니다.순서가 잘못된 인보이스 번호가 포함 된 셀을 강조 표시합니다.

내 열 B는 인보이스 번호를 표시합니다. 일반적으로 송장 번호에는 2 자 및 AA123456과 같은 6 개의 번호가 포함됩니다. 이 기준에 맞지 않는 세포를 강조하고 싶습니다.

도와주세요.

대단히 감사합니다.

+0

그래서,'소리 LEN''RFT''와'ISNUMBER' 기능을 제공합니다. –

+0

Doug Glancy 감사합니다. – tan888

답변

0

다음 코드는 3 가지 기준을 검사합니다. 길이 길이가 8 인 경우 마지막 6자가 숫자이고 처음 2자가 텍스트 인 경우. 그런 다음 셀 색상을 빨간색으로 변경합니다. 검색 범위를 원하는대로 변경하면됩니다. 희망이 당신에게 맞는. 그것은 내가`IF`의에서 살펴 것 B 열의 송장의 전반적인 순서보다, 각 송장에 대한 패턴과 일치의 문제가 더처럼

Sub check() 
    Dim cell, searchRng As Range 
    Set searchRng = Range("b1:b10") 
    For Each cell In searchRng.Cells 
     If Not Len(cell) = 8 Then 
      cell.Interior.ColorIndex = 3 
      GoTo iteration: 
     End If 
     If Not IsNumeric(Right(cell.Value, 6)) Then 
      cell.Interior.ColorIndex = 3 
      GoTo iteration: 
     End If 
     If Not Application.WorksheetFunction.IsText(Left(cell.Value, 2)) Then 
      cell.Interior.ColorIndex = 3 
      GoTo iteration: 
     End If 
iteration: 
    Next cell 
End Sub 
+0

감사합니다. Dimitris. 실제로 정확한 송장 번호가 모두 강조 표시됩니다. 잘못된 인보이스 번호를 강조 표시하는 방법이 있습니까? 예를 들어 입력시 문자 나 번호가 누락 된 경우. – tan888

+0

처음에는 이해하지 못했지만 이제는 코드를 수정했습니다. 나는 당신에게 제안하고 싶습니다만, 만약 당신이 3 가지 IF 사이에서 체크 할 많은 가치가 있다면, 가장 먼저 일어날 가능성이있는 것을 쓰도록 선택하십시오. – dimitris

+0

IF 중 하나가 실행될 때마다 코드는 실행되지 않습니다. 따라서 가장 일반적인 경우를 먼저 작성하면 실행 코드가 저장되므로 하위 코드가 더 빨리 실행됩니다. 나는 요점을 만들었 으면 좋겠다. – dimitris

관련 문제