2015-01-18 3 views
0

Привет Я пытаюсь выделить строки из номера последовательности в excel.подсвечивание ячеек, которые содержат номера номеров номеров последовательностей в excel

В моей колонке B указаны номера счетов. Обычно номера счетов содержат 2 буквы и 6 номеров, таких как AA123456. Я хочу выделить ячейки, которые не соответствуют этим критериям.

Пожалуйста, помогите.

спасибо.

+0

Итак, это звучит, как это больше проблема согласования шаблона для каждого счета-фактуры, чем общая последовательность счетов в столбце B. Я принимаю бы взглянуть на часть 'IF',' LEN '' LEFT', 'RIGHT' и' ISNUMBER'. –

+0

Спасибо Дугу Глэнси. – tan888

ответ

0

Следующий код проверяет три критерия: если длина значения равна 8, если последние 6 символов являются числами и если первые 2 символа являются текстовыми. Затем меняет цвет ячейки на красный. Просто измените диапазон поиска на желаемый. Надеюсь, это вам подходит.

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

Спасибо Димитрису. Фактически он выделяет все правильные номера счетов. Есть ли способ выделить неправильные номера счетов, например, те, у которых отсутствует буква или номер при вводе? – tan888

+0

Я не получил его в первую очередь, но теперь я исправил код. Я хотел бы предложить вам, хотя, если у вас есть много значений для проверки, между 3 IF, сначала выберите запись, которая, скорее всего, произойдет. – dimitris

+0

Каждый раз, когда выполняется один из IF, код после этого не выполняется. Поэтому, если вы сначала пишете наиболее распространенный случай, вы сохраняете исполняемый код, а sub будет выполняться быстрее. Надеюсь, я все понял. – dimitris

Смежные вопросы