Автофильтр не работает с дробными числами

Автор Посетитель, 16 июля 2024, 13:22

Посетитель

Здравствуйте !
Подскажите, пожалуйста, не получается отфильтровать дробные значения.
В столбце цифр, записанных текстом нужно удалить строки со значением < 135.
Перевожу текст в числовой формат. Но фильтр не видит дробные числа, пропуская их.

Спойлер
Dim R As Long
    R = Cells(Rows.Count, 1).End(xlUp).Row ' Считается количество заполненных рядов
   
    With Range("F1:F" & R)
        .NumberFormat = "General"
        .Value = .Value
    End With                      ' Устанавливается числовой формат ячеек в столбце 5
   
         
   
    Range("F1:F" & R).AutoFilter Field:=1, Criteria1:="<135", Operator:=xlFilterValues
    ActiveSheet.AutoFilter.Range.Offset(1).SpecialCells(xlCellTypeVisible).EntireRow.Delete ' Удаляет выбранные фильтром строки
    Selection.AutoFilter  ' Фильтр снимается
[свернуть]

Пробовал переводить ещё раз в числовой формат .NumberFormat = "0", Но дробное значение (7,5) так и остаётся в столбце, хотя формат показывает числовой без десятичных знаков. И автофильтр снова пропускает эти строки с 7,5.
Замена запятой на точку тоже не дала результат, там начинает как-то связываться датами и дают несуществующие четырёхзначные числа.
Или как-то через Clnt возможно.

Администратор

У вас задача получается: перевести числа из текстового вида в числовой? С этим проблема?
Дробное число в ячейке не распознаётся как число? Зелёный треугольник ошибки есть?

Посетитель

Задача: удалить все строки по значению столбца меньше 135. Значения записаны текстом.
В столбце попадаются строки со значением 7,5.
Фильтр просто с текстом не работал. Когда я перевёл значения из текста в числовые, фильтр заработал, но пропускает значения дробные, а они меньше 135.
Зелёного треугольника ошибки нет.

Администратор

Можно так узнать, является ли дробное число числом.
Вставьте в любую ячейку формулу: =СУММ(A1). Вместо A1 укажите ячейку, в которой находится 7,5.
Если это текст, то формула вернёт 0, если число, то формула вернёт 7,5.

Посетитель

=СУММ(F3237)
В ячейке выдаётся #ИМЯ?
Слева от неё — оранжевый ромбик с восклицательным знаком, при наведении на который всплывает сообщение "Формула содержит нераспознанный текст"

Администратор

У вас русские или английские формулы используются в Экселе?
Если английские, то вместо СУММ используйте SUM.

Посетитель

Русские.
SUM даёт такой же результат.

Администратор

Получается, что у вас не работает формула СУММ?
А другие функции работают? Когда-нибудь формулы использовали или ещё не приходилось?

Посетитель

Сумма не работает, может потому, что для неё нужны числа ? а там текст. Пробовал с другими ячейками = там где текст, не суммирует его, суммирует только числа. Кстати да, в левом верхнем углу всех ячеек столбца есть зелёный треугольник. Извиняюсь. Не сообразил вначале, что именно о нём вы спрашивали. Формулы работают и я использую формулы, только мало и однотипные.
Вот этот текст я и преобразовывал, чтобы автофильтр мог работать.

Администратор

У меня функция СУММ работает по-другому, чем у вас. Видимо зависит от версии Офиса.
В моей версии Офиса, если в ячейке нечисло, то ошибки нет, а записывается 0.
Вы смогли понять: 7,5 это текст или число?
Сейчас функция СУММ для 7,5 возвращает ошибку? А если вы вручную запишите в ячейку 7,5, то СУММ возвращает 7,5?

Посетитель

У меня версия LTSC профессиональный плюс 2021.
7,5 — это текст: так объясняет оранжевый ромбик, пояснения в нём и зелёный треугольник (апостроф) в углу.
Если вручную пишу 7,5 — =СУММ тоже не распознаёт его. Более того, если написать в двух соседних ячейках по числу, потом сделать автосумму в третьей ячейке (число) и это число вывести в любую пустую ячейку (=СУММА(адрес)), то тоже не распознает.

Администратор

Формат ячейки, в которой находится 7,5, какой: Общий, Числовой, Текстовый или другой?
Формат можно узнать так: щёлкните по ячейке правой кнопкой мыши - Формат ячеек... - вкладка Число.

Посетитель

Общий. Все ячейки в этом столбце такие (текст и общий формат).

Администратор

У вас какая-то нестандартная ситуация. Если в ячейке сделать формат Общий и напечатать 7,5, то число должно стать числом и функция СУММ должна вернуть 7,5.
Вам нужно добиться, чтобы так было. Без этого двигаться дальше не надо.

Администратор

Если не сможете решить, то выложите файл на форуме. Удалите из него секретные данные перед выкладыванием.