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

Вход

Регистрация

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

 

= Мир MS Excel/Как исключить определённые даты из подсчета в СУММПРОИЗВ(). - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Как исключить определённые даты из подсчета в СУММПРОИЗВ().
Scolopendra Дата: Суббота, 01.04.2023, 12:09 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

2023
Добрый день!

Вопрос по расчётам с датами.
Есть список доходов за определённый период. Он суммируется для отчётности по сотрудникам.
Но у одного из сотрудников последний доход (больничные) возник после увольнения, поэтому в отчёт он не должен попасть. Остальные считаются без ограничений.
То есть, нужно сравнить дату увольнения с датой получения дохода, вроде просто. Но никак не могу составить логику вычисления.
Плюс проблема в том, что отсутствие даты = 0.
Формулы какие-то монструозные получаются, даже с «нелюбимой» ЕСЛИ() и массивами не выходит.
Может есть у кого-нибудь идеи, как упростить вычисление.
В розовых ячейках мои попытки «усовершенствовать» рабочую формулу.

Если коротко, у Иванова нужно исключить из суммирования последние 50 рублей, потому что дата дохода («за период по») позже даты увольнения.
К сообщению приложен файл: vopros_po_datam.xlsx (27.5 Kb)


Олег
 
Ответить
СообщениеДобрый день!

Вопрос по расчётам с датами.
Есть список доходов за определённый период. Он суммируется для отчётности по сотрудникам.
Но у одного из сотрудников последний доход (больничные) возник после увольнения, поэтому в отчёт он не должен попасть. Остальные считаются без ограничений.
То есть, нужно сравнить дату увольнения с датой получения дохода, вроде просто. Но никак не могу составить логику вычисления.
Плюс проблема в том, что отсутствие даты = 0.
Формулы какие-то монструозные получаются, даже с «нелюбимой» ЕСЛИ() и массивами не выходит.
Может есть у кого-нибудь идеи, как упростить вычисление.
В розовых ячейках мои попытки «усовершенствовать» рабочую формулу.

Если коротко, у Иванова нужно исключить из суммирования последние 50 рублей, потому что дата дохода («за период по») позже даты увольнения.

Автор - Scolopendra
Дата добавления - 01.04.2023 в 12:09
прохожий2019 Дата: Суббота, 01.04.2023, 12:30 | Сообщение № 2
Группа: Проверенные
Ранг: Старожил
Сообщений: 1298
Репутация: 327 ±
Замечаний: 0% ±

365 Beta Channel
у этого сотрудника и предпоследний доход стоит за период с 1 по 28 февраля, получен 10 марта (хотя по логике рассчитать его должны были 25 февраля и период дохода должен был быть по 25 февраля) - и как в таком случае отличить что до увольнения, а что после?
 
Ответить
Сообщениеу этого сотрудника и предпоследний доход стоит за период с 1 по 28 февраля, получен 10 марта (хотя по логике рассчитать его должны были 25 февраля и период дохода должен был быть по 25 февраля) - и как в таком случае отличить что до увольнения, а что после?

Автор - прохожий2019
Дата добавления - 01.04.2023 в 12:30
Scolopendra Дата: Суббота, 01.04.2023, 14:28 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

2023
прохожий2019, кажется, вы совершенно правы. Я собаке не с той стороны хвост кучерявил. Получается, мне нужен чёткий маркер для «ненужных» сумм, а из даты получения его не выведешь. Придётся добавлять столбец, а «имея маркер, можно изрисовать всё, кроме этого маркера».
Пойду пробовать... Остаются сомнения насчёт даты увольнения, которая =0...


Олег
 
Ответить
Сообщениепрохожий2019, кажется, вы совершенно правы. Я собаке не с той стороны хвост кучерявил. Получается, мне нужен чёткий маркер для «ненужных» сумм, а из даты получения его не выведешь. Придётся добавлять столбец, а «имея маркер, можно изрисовать всё, кроме этого маркера».
Пойду пробовать... Остаются сомнения насчёт даты увольнения, которая =0...

Автор - Scolopendra
Дата добавления - 01.04.2023 в 14:28
Gustav Дата: Суббота, 01.04.2023, 15:31 | Сообщение № 4
Группа: Админы
Ранг: Участник клуба
Сообщений: 2797
Репутация: 1161 ±
Замечаний: ±

начинал с Excel 4.0, видел 2.1
Остаются сомнения насчёт даты увольнения, которая =0

Если есть возможность работы в свежих версия Excel (2021+, 365, web), то имеет смысл просто предварительно заготовить виртуальный массив, в котором определить "бесконечную" дату увольнения, например, 31.12.9999
[vba]
Код
=LET(
range;   G19:I22;
column3; MAP(ИНДЕКС(range;;3); LAMBDA(cell; ЕСЛИ(ЕПУСТО(cell);ДАТА(9999;12;31);cell)));
array;   ГСТОЛБИК(ВЫБОРСТОЛБЦ(range;{1;2}); column3);

ФИЛЬТР(array; НЕ(ЕПУСТО(ИНДЕКС(array;;1))))
)
[/vba]

Формула вернет такой массив - со всеми определенными датами:
[vba]
Код
Иванов И.И.    01.02.2020    25.02.2023
Петров П.П.    01.02.2020    31.12.9999
Сидоров С.С.    01.02.2020    31.12.9999
[/vba]

Если нет доступа к свежим версиям Excel, можно попробовать мигрировать в Таблицы Google (там все эти новые функции дают бесплатно).


МОИ: Ник, Tip box: 41001663842605
 
Ответить
Сообщение
Остаются сомнения насчёт даты увольнения, которая =0

Если есть возможность работы в свежих версия Excel (2021+, 365, web), то имеет смысл просто предварительно заготовить виртуальный массив, в котором определить "бесконечную" дату увольнения, например, 31.12.9999
[vba]
Код
=LET(
range;   G19:I22;
column3; MAP(ИНДЕКС(range;;3); LAMBDA(cell; ЕСЛИ(ЕПУСТО(cell);ДАТА(9999;12;31);cell)));
array;   ГСТОЛБИК(ВЫБОРСТОЛБЦ(range;{1;2}); column3);

ФИЛЬТР(array; НЕ(ЕПУСТО(ИНДЕКС(array;;1))))
)
[/vba]

Формула вернет такой массив - со всеми определенными датами:
[vba]
Код
Иванов И.И.    01.02.2020    25.02.2023
Петров П.П.    01.02.2020    31.12.9999
Сидоров С.С.    01.02.2020    31.12.9999
[/vba]

Если нет доступа к свежим версиям Excel, можно попробовать мигрировать в Таблицы Google (там все эти новые функции дают бесплатно).

Автор - Gustav
Дата добавления - 01.04.2023 в 15:31
  • Страница 1 из 1
  • 1
Поиск:

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