Я должен выяснить, является ли текст моих ячеек числовым значением и он хотел бы использовать элегантный метод не VBA , который не препятствует его текущему состоянию или значению.
Я обнаружил, что ISNUMBER()
функция работает только в том случае, если ячейки имеют числовое форматирование или не имеют пробелов при форматировании текста, например:
Для первых трех я использовал =ISNUMBER(...)
и моя последняя попытка =ISNUMBER(TRIM(...))
.
Единственный метод, который я использовал, который не использует VBA, - это переопределить мои текущие значения с помощью текста на столбцы, а затем использовать =ISNUMBER()
функцию.
Примечание. Я хорошо знаю VBA и Excel и понимаю, что могу создать пользовательскую функцию. Но я не хочу, так как это требует наличия макроса требуемой рабочей книги или надстройки, что я мог и делал в некоторых случаях.
Я буду признателен за любые советы, мысли (даже если они скажут мне, что это невозможно) или решения VBA (однако не будут отмечены как ответ).
ISNUMBER
редко используетсяN
. Как-то так=NOT(ISERR(N(--A1)))
=N(-A1)
. Не знал, что существует.Ответы:
Попробуйте умножения значения ячейки на 1, а затем запустив
IsNumber
иTrim
функции, например ,:=IsNumber(Trim(A1)*1)
источник
trim
. Мое почтение.Предполагая, что значение, которое вы хотите пересчитать, находится в A1, вы можете использовать следующую формулу:
=ISNUMBER(VALUE(TRIM(CLEAN(A1)))
Здесь функции очистки и обрезки удаляют пробелы и отсутствуют печатные символы. Значение функции преобразует строку в число, и с помощью преобразованной строки мы можем проверить, является ли значение числом.
источник
=VALUE(A1)
потому что мои данные не понадобятсяCLEAN()
. Я не знал, чтоVALUE()
функция существует. Просто отметить, чтоTRIM()
ничего не делает, так как пробелы все равно игнорируются.Самый короткий ответ, который я получил на мой вопрос:
Спасибо бреттдж
источник
Я знаю, что это сообщение является старым, но я нашел это очень полезным в этом случае, у меня была формула, которая возвратила (333), даже если это число, и ISNUMBER скажет, что это число, даже если я не хотел получать ответ, если он имел символы отличные от цифр. Следующее сработало для меня.
Это работает, если есть какие-либо символы, кроме цифр. Если вы просто хотите истинное ложное падение, ЕСЛИ
Как заявил Дэвид Земенс
Работает, но если есть «-» или число в скобках, оно скажет, что это число.
Я надеюсь, что это поможет вам или другим.
источник
если кому-то нужно отфильтровать ячейки, которые содержат что-либо не числовое:
десятичные и отрицательные результаты
FALSE
источник