Имеется таблица в которой перечисляются определенные номера, номера отображаются в числовом формате, т.е. набор чисел, а формат ячейки текстовый, чтобы номер не обрезался, к примеру есть номер 30241000001388151
Написал небольшой код, который фильтрует таблицу по столбцу В, исключая из фильтра значение последней записи. Но почему то макрос не фильтрует так как нужно ,исключая из фильтрации значение 30241000001388100
Код
Sub jgjgj()
On Error Resume Next
If ActiveSheet.AutoFilterMode Or ActiveSheet.FilterMode Then
ActiveSheet.ShowAllData
End If
ActiveSheet.ListObjects("table").Range.AutoFilter Field:=1, Criteria1:="<> "
Range("B4").Select
Selection.End(xlDown).Select
ActiveCell.Select
Vf = ActiveCell.Value
ActiveSheet.ListObjects("table").Range.AutoFilter Field:=1, Criteria1:="<>" & Vf
End Sub
Я думаю вся проблема в формате данных чисел Подскажите как можно исправить данную ошибку
Sub jgjgj()
Application.ScreenUpdating = False
On Error Resume Next
With ActiveSheet.ListObjects("table")
'отключаем фильтры
.Range.AutoFilter
'вычисляем последнюю строку с данными в первом столбце
lRow = .DataBodyRange(.DataBodyRange.Rows.Count, 1).End(xlUp).Row - .ListRows(1).Range.Row + 1
'фильтруем сразу по двум критериям (не РАВНО 'пусто' и не СОДЕРЖИТ 'значение последней ячейки')
.Range.AutoFilter Field:=1, Criteria1:="<>", _
Operator:=xlAnd, _
Criteria2:="<>*" & .DataBodyRange(lRow, 1).Value
End With
Application.ScreenUpdating = True
End Sub