Страницы: 1
RSS
Ненужное преобразование значений в формат даты
 
Всем привет.
Сегодня заметил такую забавную штуку
Такие пары как например 3-21 и 1-3 excel считает как одинаковые данные и соответственно условное форматирование (повторяющиеся значения) и формулы типа счётесли, не видят между ними разницы.
При этом ни текстовый формат ячеек, ни апостроф перед данными не дает никакого эффекта.
Как ещё объяснить Excelю, что это текст, а не дата?

1-3
3.21
1/3

В общем, с любым разделителем, который может использоваться в каком либо формате дат/
В итоге заморочился, написал простенькую функцию СчетЕсли2 (Не столько для практики, просто ради эксперимента), и она считает все правильно.
Но все же вопрос остался -Как ещё объяснить Excelю, что это текст, а не дата?
 
Привет. Как вариант:
=СУММПРОИЗВ(--($A$1:$A$10&""=A1&""))
Если в мире всё бессмысленно, — сказала Алиса, — что мешает выдумать какой-нибудь смысл? ©Льюис Кэрролл
 
Да, для расчетов это выход. Спасибо!
Осталось победить Условное форматирование (ради науки  :) ). Эта формула эффекта не дала.
 
Цитата
ArtNord написал:
Эта формула эффекта не дала.
Это почему же?
Если в мире всё бессмысленно, — сказала Алиса, — что мешает выдумать какой-нибудь смысл? ©Льюис Кэрролл
 
Сорян, моя невнимательность

А ну, и странное поведение СЧЁТЕСЛИ - почему результат 9, когда элементов 10? В каждой формуле не считает образец, но считает остальные элементы
 
"Лучшее - враг хорошего".
Не знаю кто это сказал, но здесь похоже очень применительно.
Наверное, разработчики хотели облегчить жизнь пользователям и решили сделать автоматом значения с разделителями (после двух первых знаков) датой. Но забыли предупредить об этом рядового неискушенного пользователя :)  
"Если чо - читайте справку" :)
А пользователю не надо справку читать, он хочет видеть то, что ввел на клавиатуре...  
Хотелось бы узнать мнение профи на этот счет (именно про форматы даты в MS- насколько оправдан такой подход) .
Не раз сталкивался с проблемами в представлении дат.
Или тут просто-напросто расчет на то, что "обращайтесь к нам и мы вам все сделаем"? За дополнительную оплату?
Я не о том, что рыночные отношения плохи, плохо если обман.
 
Цитата
ArtNord написал:
3-21 и 1-3 excel считает как одинаковые данные
Это не так. Базовое значение ячейки (число, текст) определяется в момент занесения и дальше не изменяется (даже при изменении формата, кроме совсем уж экзотичных случаев).

Другое дело, что при реализации функций СУММЕСЛИ, СЧЁТЕСЛИ и некоторых других разработчиком принято крайне неудачное решение: перед сравнением производится попытка преобразования текстов в числа или даты по определенным правилам. Из-за этого эти функции крайне опасны, например, в бухгалтерских расчетах, где встречаются тексты, состоящие из 16 и более цифр: расчетные счета, номера банковских карт и т.д.

Само по себе преобразование текстов в даты или числа в момент ввода выглядит естественно, иначе пришлось бы при вводе, например, "10.4.21" каждый раз спрашивать пользователя, текст или дату он вводит. С другой стороны, это обязывает пользователя быть внимательным.
Изменено: sokol92 - 10.04.2021 15:25:38
Владимир
 
Да, наверное Вы правы, но вот вопрос почему в СЧЁТЕСЛИ результат 9?
 
Да, наверное Вы правы, но вот вопрос почему в СЧЁТЕСЛИ результат 9?

Цитата
sokol92 написал: определяется в момент занесения и дальше не изменяется
Данные сразу вносились с апострофом и формат ячейки Текстовый
 
Причина в строке 7. Если Вы уберете в ней знак равенства, то станет 10.
Функции Excel (за редким исключением) игнорируют формат ячеек. Точных правил, в соответствии с которыми действует функция СЧЁТЕСЛИ при обработке текстов, начинающихся на знак "=",  я не знаю (хотя могу догадываться).
Изменено: sokol92 - 10.04.2021 15:49:53
Владимир
Страницы: 1
Наверх