Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Ближайшая вторая или четвертая суббота - Мир MS Excel

Старая форма входа
  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Модератор форума: китин  
Ближайшая вторая или четвертая суббота
AlexM Дата: Вторник, 07.11.2023, 13:15 | Сообщение № 1
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1129 ±
Замечаний: 0% ±

Excel 2003
Привет всем! Давно здесь не был. Пришел с вопросом.
Нужна формула которая определит ближайшую вторую или четвертую субботу месяца от текущей даты.
Если дата больше четвертой субботы, то показать вторую субботу следующего месяца.
Если текущая дата совпадает со второй или четвертой субботой, то формула определяет эту дату.
Спасибо.



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
СообщениеПривет всем! Давно здесь не был. Пришел с вопросом.
Нужна формула которая определит ближайшую вторую или четвертую субботу месяца от текущей даты.
Если дата больше четвертой субботы, то показать вторую субботу следующего месяца.
Если текущая дата совпадает со второй или четвертой субботой, то формула определяет эту дату.
Спасибо.

Автор - AlexM
Дата добавления - 07.11.2023 в 13:15
msi2102 Дата: Вторник, 07.11.2023, 13:47 | Сообщение № 2
Группа: Проверенные
Ранг: Обитатель
Сообщений: 415
Репутация: 129 ±
Замечаний: 0% ±

Excel 2007
Попробуйте так (в лоб)
Код
=ЕСЛИ(A1<=КОНМЕСЯЦА(A1;0)-(5-ДЕНЬНЕД(КОНМЕСЯЦА(A1;0);2)+15);КОНМЕСЯЦА(A1;0)-(5-ДЕНЬНЕД(КОНМЕСЯЦА(A1;0);2)+15);КОНМЕСЯЦА(A1;0)-(5-ДЕНЬНЕД(КОНМЕСЯЦА(A1;0);2)+1))
К сообщению приложен файл: kniga1.xlsx (48.1 Kb)
 
Ответить
СообщениеПопробуйте так (в лоб)
Код
=ЕСЛИ(A1<=КОНМЕСЯЦА(A1;0)-(5-ДЕНЬНЕД(КОНМЕСЯЦА(A1;0);2)+15);КОНМЕСЯЦА(A1;0)-(5-ДЕНЬНЕД(КОНМЕСЯЦА(A1;0);2)+15);КОНМЕСЯЦА(A1;0)-(5-ДЕНЬНЕД(КОНМЕСЯЦА(A1;0);2)+1))

Автор - msi2102
Дата добавления - 07.11.2023 в 13:47
AlexM Дата: Вторник, 07.11.2023, 14:07 | Сообщение № 3
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1129 ±
Замечаний: 0% ±

Excel 2003
Спасибо. Excel 2003 к сожалению не имеет функции КОНМЕСЯЦА().
Забыл об этом написать.



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
СообщениеСпасибо. Excel 2003 к сожалению не имеет функции КОНМЕСЯЦА().
Забыл об этом написать.

Автор - AlexM
Дата добавления - 07.11.2023 в 14:07
cmivadwot Дата: Вторник, 07.11.2023, 14:18 | Сообщение № 4
Группа: Проверенные
Ранг: Ветеран
Сообщений: 532
Репутация: 97 ±
Замечаний: 0% ±

365
AlexM, примитивный вариант.... с допами. но до конца не проверил, все ли работает.
К сообщению приложен файл: 2_4_subbota.xlsx (11.7 Kb)
 
Ответить
СообщениеAlexM, примитивный вариант.... с допами. но до конца не проверил, все ли работает.

Автор - cmivadwot
Дата добавления - 07.11.2023 в 14:18
Serge_007 Дата: Вторник, 07.11.2023, 14:50 | Сообщение № 5
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
AlexM, привет!
Реально тебя давно не было)
Как дела?

msi2102, почему для 28.01.2023 результат 27.01.2023?

Сделал немного иначе и без КОНМЕСЯЦА():
Код
=МАКС(ЕСЛИ(ДЕНЬНЕД(A1:A14;2)=5;A1:A14))-ЕНЕЧЁТ(СУММ(--(ДЕНЬНЕД(A1:A$1;2)=6)))*7
К сообщению приложен файл: 20231107_alexm.xls (36.0 Kb)


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
СообщениеAlexM, привет!
Реально тебя давно не было)
Как дела?

msi2102, почему для 28.01.2023 результат 27.01.2023?

Сделал немного иначе и без КОНМЕСЯЦА():
Код
=МАКС(ЕСЛИ(ДЕНЬНЕД(A1:A14;2)=5;A1:A14))-ЕНЕЧЁТ(СУММ(--(ДЕНЬНЕД(A1:A$1;2)=6)))*7

Автор - Serge_007
Дата добавления - 07.11.2023 в 14:50
elovkov Дата: Вторник, 07.11.2023, 15:04 | Сообщение № 6
Группа: Друзья
Ранг: Обитатель
Сообщений: 405
Репутация: 72 ±
Замечаний: 0% ±

Excel 2013
В ноябре не работают формулы, раньше-позже на 2-3 месяца тоже, больше не проверял

К сообщению приложен файл: 3000175.png (74.2 Kb)


Умное лицо это еще не признак ума. Все глупости на земле делаются именно с этим выражением лица

Сообщение отредактировал elovkov - Вторник, 07.11.2023, 15:05
 
Ответить
СообщениеВ ноябре не работают формулы, раньше-позже на 2-3 месяца тоже, больше не проверял


Автор - elovkov
Дата добавления - 07.11.2023 в 15:04
AlexM Дата: Вторник, 07.11.2023, 15:12 | Сообщение № 7
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1129 ±
Замечаний: 0% ±

Excel 2003
У меня не работает правильно, если в месяце 5 суббот
К сообщению приложен файл: vtoraja_i_chetvertaja_subbota.xls (32.0 Kb)



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
СообщениеУ меня не работает правильно, если в месяце 5 суббот

Автор - AlexM
Дата добавления - 07.11.2023 в 15:12
Serge_007 Дата: Вторник, 07.11.2023, 15:50 | Сообщение № 8
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
В ноябре не работают формулы
Суббота же 6-й день недели, а я пятый в формуле написал ДЕНЬНЕД(A1:A14;2)=5 :)
Исправил (см. вложение)
К сообщению приложен файл: 20231107_alexm_2.xls (40.5 Kb)


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
В ноябре не работают формулы
Суббота же 6-й день недели, а я пятый в формуле написал ДЕНЬНЕД(A1:A14;2)=5 :)
Исправил (см. вложение)

Автор - Serge_007
Дата добавления - 07.11.2023 в 15:50
elovkov Дата: Вторник, 07.11.2023, 16:17 | Сообщение № 9
Группа: Друзья
Ранг: Обитатель
Сообщений: 405
Репутация: 72 ±
Замечаний: 0% ±

Excel 2013
С пятью субботами тоже глючит, причем по-разному, смотря от какой даты начинать столбец (декабрь 23 - 5 суббот)


Умное лицо это еще не признак ума. Все глупости на земле делаются именно с этим выражением лица
 
Ответить
СообщениеС пятью субботами тоже глючит, причем по-разному, смотря от какой даты начинать столбец (декабрь 23 - 5 суббот)

Автор - elovkov
Дата добавления - 07.11.2023 в 16:17
msi2102 Дата: Вторник, 07.11.2023, 16:21 | Сообщение № 10
Группа: Проверенные
Ранг: Обитатель
Сообщений: 415
Репутация: 129 ±
Замечаний: 0% ±

Excel 2007
msi2102, почему для 28.01.2023 результат 27.01.2023
Ну да косяк
 
Ответить
Сообщение
msi2102, почему для 28.01.2023 результат 27.01.2023
Ну да косяк

Автор - msi2102
Дата добавления - 07.11.2023 в 16:21
Serge_007 Дата: Вторник, 07.11.2023, 16:33 | Сообщение № 11
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
глючит
Речь о какой формуле?
Моя, вроде, правильно работает - 09.12, 23.12, 06.01


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
глючит
Речь о какой формуле?
Моя, вроде, правильно работает - 09.12, 23.12, 06.01

Автор - Serge_007
Дата добавления - 07.11.2023 в 16:33
elovkov Дата: Вторник, 07.11.2023, 16:44 | Сообщение № 12
Группа: Друзья
Ранг: Обитатель
Сообщений: 405
Репутация: 72 ±
Замечаний: 0% ±

Excel 2013
06.01


06/01/24 - это первая суббота января)))


Умное лицо это еще не признак ума. Все глупости на земле делаются именно с этим выражением лица
 
Ответить
Сообщение
06.01


06/01/24 - это первая суббота января)))

Автор - elovkov
Дата добавления - 07.11.2023 в 16:44
msi2102 Дата: Вторник, 07.11.2023, 16:48 | Сообщение № 13
Группа: Проверенные
Ранг: Обитатель
Сообщений: 415
Репутация: 129 ±
Замечаний: 0% ±

Excel 2007
AlexM, А UDF не подойдёт?
 
Ответить
СообщениеAlexM, А UDF не подойдёт?

Автор - msi2102
Дата добавления - 07.11.2023 в 16:48
Serge_007 Дата: Вторник, 07.11.2023, 16:58 | Сообщение № 14
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
первая суббота января
И что?)
В задаче же нужна не вторая суббота месяца, а вторая суббота от даты
Вторая суббота от 24.12 - это 06.01


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
первая суббота января
И что?)
В задаче же нужна не вторая суббота месяца, а вторая суббота от даты
Вторая суббота от 24.12 - это 06.01

Автор - Serge_007
Дата добавления - 07.11.2023 в 16:58
msi2102 Дата: Вторник, 07.11.2023, 17:18 | Сообщение № 15
Группа: Проверенные
Ранг: Обитатель
Сообщений: 415
Репутация: 129 ±
Замечаний: 0% ±

Excel 2007
а вторая суббота от даты
ну не знаю, я понял не так

определит ближайшую вторую или четвертую субботу месяца от текущей даты
 
Ответить
Сообщение
а вторая суббота от даты
ну не знаю, я понял не так

определит ближайшую вторую или четвертую субботу месяца от текущей даты

Автор - msi2102
Дата добавления - 07.11.2023 в 17:18
Serge_007 Дата: Вторник, 07.11.2023, 17:27 | Сообщение № 16
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Опаньки...


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
СообщениеОпаньки...

Автор - Serge_007
Дата добавления - 07.11.2023 в 17:27
AlexM Дата: Вторник, 07.11.2023, 18:14 | Сообщение № 17
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1129 ±
Замечаний: 0% ±

Excel 2003
msi2102, может и UDF подойдет.
Нужен алгоритм, потом на JavaScript попробую переделать. Нужно для сайта



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.


Сообщение отредактировал AlexM - Вторник, 07.11.2023, 18:14
 
Ответить
Сообщениеmsi2102, может и UDF подойдет.
Нужен алгоритм, потом на JavaScript попробую переделать. Нужно для сайта

Автор - AlexM
Дата добавления - 07.11.2023 в 18:14
AlexM Дата: Вторник, 07.11.2023, 18:22 | Сообщение № 18
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1129 ±
Замечаний: 0% ±

Excel 2003
В задаче же нужна не вторая суббота месяца
Как раз вторая или четвертая суббота месяца. В январе вторая суббота 13.01.2024



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
Сообщение
В задаче же нужна не вторая суббота месяца
Как раз вторая или четвертая суббота месяца. В январе вторая суббота 13.01.2024

Автор - AlexM
Дата добавления - 07.11.2023 в 18:22
Pelena Дата: Вторник, 07.11.2023, 19:50 | Сообщение № 19
Группа: Админы
Ранг: Местный житель
Сообщений: 19403
Репутация: 4554 ±
Замечаний: ±

Excel 365 & Mac Excel
Алексей, привет) Рада видеть) Как поживаешь?
Посмотри такой вариант
Код
=МИН(ЕСЛИ(A1<=ДАТА(ГОД(A1);МЕСЯЦ(A1)+{0;1};{2:4}*7-6)+ОСТАТ(6-ДАТА(ГОД(A1);МЕСЯЦ(A1)+{0;1};);7);ДАТА(ГОД(A1);МЕСЯЦ(A1)+{0;1};{2:4}*7-6)+ОСТАТ(6-ДАТА(ГОД(A1);МЕСЯЦ(A1)+{0;1};);7)))
К сообщению приложен файл: 8148229.xls (73.5 Kb)


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеАлексей, привет) Рада видеть) Как поживаешь?
Посмотри такой вариант
Код
=МИН(ЕСЛИ(A1<=ДАТА(ГОД(A1);МЕСЯЦ(A1)+{0;1};{2:4}*7-6)+ОСТАТ(6-ДАТА(ГОД(A1);МЕСЯЦ(A1)+{0;1};);7);ДАТА(ГОД(A1);МЕСЯЦ(A1)+{0;1};{2:4}*7-6)+ОСТАТ(6-ДАТА(ГОД(A1);МЕСЯЦ(A1)+{0;1};);7)))

Автор - Pelena
Дата добавления - 07.11.2023 в 19:50
Gustav Дата: Вторник, 07.11.2023, 20:03 | Сообщение № 20
Группа: Админы
Ранг: Участник клуба
Сообщений: 2793
Репутация: 1160 ±
Замечаний: ±

начинал с Excel 4.0, видел 2.1
А у меня такой монстр получился (ох, уж эта версия 2003):
Код
=-ВПР(-ЦЕЛОЕ(A1);-ПСТР(
ЦЕЛОЕ(ДАТА(ГОД(A1);МЕСЯЦ(A1)+1;ОСТАТ(13-ДЕНЬНЕД(ДАТА(ГОД(A1);МЕСЯЦ(A1)+1;1);2);7)+ 8))&
ЦЕЛОЕ(ДАТА(ГОД(A1);МЕСЯЦ(A1)  ;ОСТАТ(13-ДЕНЬНЕД(ДАТА(ГОД(A1);МЕСЯЦ(A1)  ;1);2);7)+22))&
ЦЕЛОЕ(ДАТА(ГОД(A1);МЕСЯЦ(A1)  ;ОСТАТ(13-ДЕНЬНЕД(ДАТА(ГОД(A1);МЕСЯЦ(A1)  ;1);2);7)+ 8));
{1:6:11};5);1;1)

Или для удобства рассматривания с другим тэгом:
[vba]
Код
=-ВПР(-ЦЕЛОЕ(A1);-ПСТР(
ЦЕЛОЕ(ДАТА(ГОД(A1);МЕСЯЦ(A1)+1;ОСТАТ(13-ДЕНЬНЕД(ДАТА(ГОД(A1);МЕСЯЦ(A1)+1;1);2);7)+ 8))&
ЦЕЛОЕ(ДАТА(ГОД(A1);МЕСЯЦ(A1)  ;ОСТАТ(13-ДЕНЬНЕД(ДАТА(ГОД(A1);МЕСЯЦ(A1)  ;1);2);7)+22))&
ЦЕЛОЕ(ДАТА(ГОД(A1);МЕСЯЦ(A1)  ;ОСТАТ(13-ДЕНЬНЕД(ДАТА(ГОД(A1);МЕСЯЦ(A1)  ;1);2);7)+ 8));
{1:6:11};5);1;1)
[/vba]

P.S. По традиции в коллекцию - формула для Excel 365/2021+, объясняющая мою логику, которую пытался "как-то пристроить" в 2003 - стремился построить массив для последующего ВПРа:
[vba]
Код
=LET(
г; ГОД(A1);
м; МЕСЯЦ(A1);
дн1тек;  ДЕНЬНЕД(ДАТА(г;м;  1);2);
дн1след; ДЕНЬНЕД(ДАТА(г;м+1;1);2);
массив;  ВСТОЛБИК(  ДАТА(г;м;  ОСТАТ(13-дн1тек; 7)+ 8);
                    ДАТА(г;м;  ОСТАТ(13-дн1тек; 7)+22);
                    ДАТА(г;м+1;ОСТАТ(13-дн1след;7)+ 8));
ПРОСМОТРX(A1;массив;массив;"не найдено";1)
)
[/vba]


МОИ: Ник, Tip box: 41001663842605

Сообщение отредактировал Gustav - Вторник, 07.11.2023, 23:38
 
Ответить
СообщениеА у меня такой монстр получился (ох, уж эта версия 2003):
Код
=-ВПР(-ЦЕЛОЕ(A1);-ПСТР(
ЦЕЛОЕ(ДАТА(ГОД(A1);МЕСЯЦ(A1)+1;ОСТАТ(13-ДЕНЬНЕД(ДАТА(ГОД(A1);МЕСЯЦ(A1)+1;1);2);7)+ 8))&
ЦЕЛОЕ(ДАТА(ГОД(A1);МЕСЯЦ(A1)  ;ОСТАТ(13-ДЕНЬНЕД(ДАТА(ГОД(A1);МЕСЯЦ(A1)  ;1);2);7)+22))&
ЦЕЛОЕ(ДАТА(ГОД(A1);МЕСЯЦ(A1)  ;ОСТАТ(13-ДЕНЬНЕД(ДАТА(ГОД(A1);МЕСЯЦ(A1)  ;1);2);7)+ 8));
{1:6:11};5);1;1)

Или для удобства рассматривания с другим тэгом:
[vba]
Код
=-ВПР(-ЦЕЛОЕ(A1);-ПСТР(
ЦЕЛОЕ(ДАТА(ГОД(A1);МЕСЯЦ(A1)+1;ОСТАТ(13-ДЕНЬНЕД(ДАТА(ГОД(A1);МЕСЯЦ(A1)+1;1);2);7)+ 8))&
ЦЕЛОЕ(ДАТА(ГОД(A1);МЕСЯЦ(A1)  ;ОСТАТ(13-ДЕНЬНЕД(ДАТА(ГОД(A1);МЕСЯЦ(A1)  ;1);2);7)+22))&
ЦЕЛОЕ(ДАТА(ГОД(A1);МЕСЯЦ(A1)  ;ОСТАТ(13-ДЕНЬНЕД(ДАТА(ГОД(A1);МЕСЯЦ(A1)  ;1);2);7)+ 8));
{1:6:11};5);1;1)
[/vba]

P.S. По традиции в коллекцию - формула для Excel 365/2021+, объясняющая мою логику, которую пытался "как-то пристроить" в 2003 - стремился построить массив для последующего ВПРа:
[vba]
Код
=LET(
г; ГОД(A1);
м; МЕСЯЦ(A1);
дн1тек;  ДЕНЬНЕД(ДАТА(г;м;  1);2);
дн1след; ДЕНЬНЕД(ДАТА(г;м+1;1);2);
массив;  ВСТОЛБИК(  ДАТА(г;м;  ОСТАТ(13-дн1тек; 7)+ 8);
                    ДАТА(г;м;  ОСТАТ(13-дн1тек; 7)+22);
                    ДАТА(г;м+1;ОСТАТ(13-дн1след;7)+ 8));
ПРОСМОТРX(A1;массив;массив;"не найдено";1)
)
[/vba]

Автор - Gustav
Дата добавления - 07.11.2023 в 20:03
  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!