Страницы: 1
RSS
СЧЁТЕСЛИМН для дат с условиями "больше или равно" и "меньше или равно"
 
Здравствуйте. Имеется Лист1, на котором указаны строки с датами в промежутке между 26.10.2020 6:56:05 и 28.10.2020 22:29:25. Таких строк - 625.
На Лист2 я хочу посчитать кол-во вхождений в периоде между 26.10.2020 0:00:00 и 28.10.2020 23:59:59. Пишу формулу в ячейку B2:
Код
=СЧЁТЕСЛИМН(Лист1!A:A;A2;Лист1!B:B;">="&"26/10/2020";Лист1!B:B;"<="&"28/10/2020")
где ясно видно, что нужно посчитать всё, больше либо равно (>=) 26/10/2020 и меньше либо равно (<=) 28/10/2020. То бишь, под это условие попадают все 625 строк.
Но Excel выдает значение 188, что равно периоду с 26/10/2020 по 27/10/2020. Если же я изменю формулу на:
Код
=СЧЁТЕСЛИМН(Лист1!A:A;A2;Лист1!B:B;">="&"26/10/2020";Лист1!B:B;"<"&"28/10/2020")
то ничего не изменится, значение так и остается 188.

Вопрос: почему, когда я пишу меньше либо равно (<=) 28/10/2020, Excel не учитывает эту дату? Ведь есть "равно" в формуле. Как посчитать еще и 28/10/2020?

PS: дополнительно игрался с формулой вида:
Код
=СЧЁТЕСЛИМН(Лист1!A:A;A2;Лист1!B:B;">="&B1;Лист1!B:B;"<="&C1)
в ячейке B4, что тоже не дало результата.
 
Все правильно считается.
Любая дата - это дата + 0 времени. А у Вас в исходных данных что? Найдите там хоть одну дату 28.10.20 с нулевым временем :)
А если запишете в условии "28/10/2020"+"5/24"?
 
а как вы думаете  28/10/20 00:00:01 больше 28/10/20 или меньше равно 28/10/20 ?
сформулирую по другому 28/10/20 00:00:01 попадает в указанный вами диапазон между   26/10/20  и  28/10/20 ??

что написано, то и посчитано
Изменено: Ігор Гончаренко - 19.11.2020 18:23:00
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
vikttur, Ігор Гончаренко, следуя логике, формула "<= 28/10/2020" это всё, что либо меньше, либо равно дате 28.20.2020. Если логика Excel не совпадает с логикой общепринятой, то увольте. Это меня и удивило.

Хотелось бы услышать ответ на заданный вопрос - как учесть еще и 28.10.2020 с учетом наличия времени? Изменить формулу на "<29/10/2020" или "<=29/10/2020" не предлагать. Нужно, чтоб обязательно было "<=28/10/2020". То бишь, чтоб можно было задавать конкретный день "по", а не "до".

Да, если изменить формулу на:
Код
=СЧЁТЕСЛИМН(Лист1!A:A;A2;Лист1!B:B;">="&"26/10/2020 00:00:00";Лист1!B:B;"<"&"29/10/2020 00:00:00")
то всё ок. Но так неинтересно.
Изменено: andronus - 19.11.2020 19:02:52
 
Цитата
andronus написал:
чтоб можно было задавать конкретный день "по",
Попробуйте так:
Код
"<="&КОНМЕСЯЦА(ДАТА(2020;10;28);0)
Изменено: memo - 19.11.2020 19:07:51
 
Я придумал решение. Всё еще проще оказалось. Всем спасибо.
Код
=СЧЁТЕСЛИМН(Лист1!$A:$A;$A$4;Лист1!$B:$B;">="&B1;Лист1!$B:$B;"<="&B1+1)
Изменено: andronus - 19.11.2020 20:00:57
 
Цитата
andronus написал: Если логика Excel не совпадает с логикой общепринятой
Дата - целое число - количество дней от 01.01.1900. Время - дробное. (1 час - 1/24, 7 часов - 7/24)
Чтобы Ваша логика не страдала и немного выпрямилась, проведите эксперимент.
Впишите в две ячейки 28.10.2020 и 28.10.2020 00:00:01. Сравните эти значения знаком <= с датой 28.10.2020, введенной в третью ячейку... Теперь задайте этим ячейкам общий формат.
 
Цитата
andronus написал:
логика Excel не совпадает с логикой общепринятой
представьте шкалу времени с посекунжними ометками на ней
26.10.20 00:00:01
26.10.20 00:00:02
26.10.20 00:00:03
....
26.10.20 23:59:59
27.10.20 00:00:00
27.10.20 00:00:01
....
27.10.20 23:59:59
28.10.20 00:00:00
тут все в порядке? не противоречит вашей логике? время тут написано подряд? секунда за секундой?

а как по вашему
28.10.20 00:00:01 находится внутри изображенного интервала времени или вне его?
поэтому, пожалуйста, не нужно свои глубоко ошибочные логические выводы называть ОБЩЕПРИНЯТОЙ догикой.  вы знакомы с людьми разделяющими вашу логику, среди которых она общепринята?
я понимаю если скорость ваших мыслей быстрее скорости света, то в такой ситуации время может не только останавливаться, но и поворачивать вспять)
куда мне, человеку предпенсионного возраста, тягаться со скоростью ваших мыслей
Изменено: Ігор Гончаренко - 19.11.2020 19:23:55
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Всем спасибо, выше я нашел решение.
Ігор Гончаренко, спорить я с вами не буду, не за чем. Но фраза "меньше либо равно 28.10.2020" означает лишь одно - это всё, что меньше либо равно 28.10.2020. То есть, в этот период попадают как 15.03.1968 03:15:18, так и 28.10.2020 22:54:10. А вот 29.10.2020 и 30.07.2134 сюда уже не попадают.
 
Да, если это ДАТА БЕЗ ВРЕМЕНИ!
Судя по Вашей логике: 20 = 20,3
 
собирайте последователей вашей логики в отдельное сообщество, назовем его сектой или новой логической школой
и вашем кругу можете считать, что 28.10.2020 22:54:10 <= 28.10.2020
хорошо, а согласно вашей логической школы:
1) числа 10 и 10.000 равны между собой?
2) а 28.10.2020 и 28.10.2020 00:00::00 равны между собой??
и наконец
3) 28.10.2020 22:54:10 <= 28.10.2020  00:00:00 ???
все 3 выражения истинны????
Изменено: Ігор Гончаренко - 19.11.2020 19:57:46
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Всем спасибо, выше я нашел решение.
Страницы: 1
Наверх