Из моего графического интерфейса я ввожу цифры следующим образом: 9811,7841, которые будут отправлены на мой макрос. Мой макрос:игнорировать алфавиты при прохождении через ячейки
sub highlight(fm as variant)
dim sh as worksheet
Dim i As Integer
dim j as integer
dim k As Long
Dim rn As Range
din number() as integer
If phm <> 0 Then
phm = Split(phm, ",")
ReDim number(LBound(phm) To UBound(phm)) As Integer
Set sh = w.Worksheets("Sheet1")
sh.Select
Cells.Find("Type").Select
ActiveCell.Offset(1, 0).Select
Set rn = sh.UsedRange
k = rn.Rows.Count + rn.Row - 1
For i = 1 To k
For j = LBound(number) To UBound(number)
number(j) = CInt(phm(j))
If ActiveCell.Value = number(j) Or IsEmpty(ActiveCell.Value) Then
Selection.Interior.ColorIndex = xlNone
Else
Selection.Interior.Color = vbGreen
Exit For
End If
Next j
ActiveCell.Offset(1, 0).Select 'moves activecell down one row.
Next i
End If
ActiveWorkbook.Save
End Sub
Я хотел бы изменить свой код в таких алфавитах игнорируются, если присутствует в любом cell.In ниже случай, CELL3 и ячейка 5 должна быть выделена, как мой «фм» содержит 9811, 7841, поэтому ячейка 1,2,4 действительна. При проверке ячеек следует игнорировать.
Sheet1
cell 1: 9811
cell 2: hello 9811
cell 3: 3428
cell 4: hello 7841
cell 5:hello 2545
Почему вы не воздерживаетесь от ввода пользователем алфавита в ячейки? [Отметьте этот ответ.] (http://stackoverflow.com/q/11133771/1389394) – bonCodigo
Нет, Я не могу этого сделать:/ – Sagi
Дубликат [Игнорировать алфавиты в ячейке, следует проверять только номера) (http://stackoverflow.com/questions/30542051/ignore-alphabets-in-a-cell-only-numbers-should -be-checked) – Comintern