18

Вопрос по функциям Excel

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

Вопрос по функциям Excel

Работа в банке, поэтому в задачке упрощенный депозитный портфель и надо посчитать среднюю стоимость привлечения с учётом некоторых условий.
Прошу кандидатов ответить на вопрос, написав формулу в ячейке и в процессе выясняется, что функции "суммесли" и "суммеслимн" не поддерживают в качестве источника произведение столбцов "остаток" и "ставка", а ожидают лишь один столбец.
Сам всю жизнь для решения таких задач использовал формулы массива в комбинации с "сумм" и "если", но ожидал, что должно быть решение без заморочек с формулами массива.

Вопрос такой - можно ли решить данную задачу формулой в одной ячейке, не используя формулы массива и не создавая дополнительных столбцов?

MS, Libreoffice & Google docs

782 поста15K подписчиков

Правила сообщества

1. Не нарушать правила Пикабу

2. Публиковать посты соответствующие тематике сообщества

3. Проявлять уважение к пользователям

4. Не допускается публикация постов с вопросами, ответы на которые легко найти с помощью любого поискового сайта.

По интересующим вопросам можно обратиться к автору поста схожей тематики, либо к пользователям в комментариях


Важно - сообщество призвано помочь, а не постебаться над постами авторов! Помните, не все обладают 100 процентными знаниями и навыками работы с Office. Хотя вы и можете написать, что вы знали об описываемом приёме раньше, пост неинтересный и т.п. и т.д., просьба воздержаться от подобных комментариев, вместо этого предложите способ лучше, либо дополните его своей полезной информацией и вам будут благодарны пользователи.

Утверждения вроде "пост - отстой", это оскорбление автора и будет наказываться баном.

6
Автор поста оценил этот комментарий
Если решаю задачку, то когда можно выходить на работу?)
раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Какая ЗП вас удовлетворит?))
Если без шуток, то с удовольствием посмотрю резюме. Тут вакансия, правда, декретная, но девочка говорит, что 1,5 года её 100% не будет. Территориально - Мск/Симферополь. Белая ЗП, ДМС с зубами, премии

показать ответы
2
Автор поста оценил этот комментарий
Вот так будет и быстро и без массива:
=СУММ(ИНДЕКС(B2:B6*C2:C6*--(A2:A6="Продукт 1");0))/СУММЕСЛИМН(B2:B6;A2:A6;"Продукт 1")
раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Да, супер! Вообще не помню, чтоб где-то "индекс" использовал. Из описания в excel вообще непонятно, для чего она нужна.

1
Автор поста оценил этот комментарий

Или так: СУММПРОИЗВ(B2:B6*C2:C6*(A2:A6="Продукт 1"))/СУММПРОИЗВ(B2:B6*(A2:A6="Продукт 1")). Умножение вместо двойного минуса как-то глазу приятнее, что-ли.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Да, так тоже работает! Странно только что если диапазоны через точку с запятой в первое "суммпроизв" добавлять, то без двойного минуса не работает, а с перемножением - вполне!

показать ответы
1
Автор поста оценил этот комментарий
У меня студент за три месяца выучил и массивы и квери и пивоты. Сидит вон сейчас мои файлы критикует (как будто я сам не знаю что там фигня 😁)

Может попробуете давать задание побольше но с собой на дом чтоб подумал и с утра прислал? Мне такой подход очень помогает
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Мы с вами мыслим одинаково - я так и сделал с заданием)

А мой первый студент не критиковал, а 1,5 года впитывал, а потом свалил на зп *2

2
Автор поста оценил этот комментарий
В чем проблема то у вас? Хотите и считать в одном ячейке и систему не нагружать? UDF использовать пробовали?
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Это не проблема, чисто академический интерес. То, как я обычно делаю, есть в ответах ниже.
Что за UDF?

показать ответы
5
Автор поста оценил этот комментарий
={Сумм((B2:B6)*(C2:C6)*--(A2:A6="Продукт 1"))/суммеслимн(B2:B6;A2:A6;"Продукт 1")}
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

В условии было, что надо без формул массива

показать ответы
0
Автор поста оценил этот комментарий
210 тыр? Я правда не знаю что такое средняя стоимость привлечения.
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Нет. Средняя стоимость привлечения - это средневзвешенная на объём ставка по депозитам по продукту 1. Это ставка, она не в тыс. рублей

2
Автор поста оценил этот комментарий

В office365 можно обойтись и без формул массива, если использовать функцию FILTER:
=SUMPRODUCT(FILTER(B:B;A:A="Продукт 1");FILTER(C:C;A:A="Продукт 1"))/SUM(FILTER(B:B;A:A="Продукт 1"))
Для других версий офиса функция, к сожалению, недоступна на текущий момент: https://support.microsoft.com/ru-ru/office/функция-фильтр-f4f7cb66-82eb-4767-8f7c-4877ad80c759

раскрыть ветку (1)
Автор поста оценил этот комментарий

К сожалению, проверить результат не имею возможности.
"SUMPRODUCT" - это тоже функция?

показать ответы
1
Автор поста оценил этот комментарий

Если активно используется powerbi - это тоже самое что powerpivot, проблема закрыта.

PowerQuery очень удобен для вычистки и агрегирования разных источников данных. Если в компании все данные удобно закачиваются в единую базу, а сотрудники имеют хорошие навыки работы с sql то pq тоже в целом не критичен.


Я только не понял, в каких ситуациях нужны формулы массивов/индексов, если например в powerbi мера запросто будет динамически оценивать стоимость по любому портфелю под фильтрами? (я это к тому, что подобная задача меня бы лично ввела в ступор, табличные формулы уже очень плохо помню)


Типичная задача, не решаемая в табличном excel, но решаемая в powerpivot/powerbi - вывод % каждой строки в сводной от суммы всех строк по этой сводной.

раскрыть ветку (1)
Автор поста оценил этот комментарий

У нас powerbi скорее удобный инструмент для начальства вместо pdf/excel или        файлов powerpoint с отчётами. Они попросили сделать им определенный набор витрин, а нас обязали их заполнять. Когда им надо, они смотрят, а файлы с отчётами не валятся каждый день на почту. Удобно.

Ситуация, в которой используются формулы массива каждый день, как пример - файл с прогнозом определенных показателей на несколько месяцев вперед с разбивкой по каждому дню.
Внутри прогноза - таблица, где по горизонтали - даты, а по вертикали - показатели и их компоненты.

В каждой ячейке происходит расчёт изменений каждого компонента в зависимости от даты. Расчёт может быть завязан на несколько условий, 4 условия сразу точно могу вспомнить, возможно в некоторых местах и больше. Вот тут эти формулы массива и нужны, ну или, как мы в этой теме выяснили, другие способы.

показать ответы
0
DELETED
Автор поста оценил этот комментарий

Если я Вас правильно понял, то вот так, я добавил ещё одну строку с количеством 5, массой 1,5 и ценой 119.
Округления сами делайте, если нужно, а принцип на скрине, если я верно Вас понял.

Иллюстрация к комментарию
раскрыть ветку (1)
Автор поста оценил этот комментарий

Всё так, да.
Обычно просто считают среднюю цену килограмма без учёта количества купленных упаковок.

0
DELETED
Автор поста оценил этот комментарий

В самом начале не СЧЁТЕСЛИ, а СУММЕСЛИ

среднее же нужно, т.е. сумму всех "хрень №1" разделить на количество "хрень №1" = средняя цена "хрень №1"

если прям простыми словами :)

раскрыть ветку (1)
Автор поста оценил этот комментарий

Если так считать, то получится не та средняя, которая нужна, в этом то и затык.
На самом деле первым я даю совсем простой пример даже не на формулы excel, а просто на понимание экономики:
Вас посылают в магазин купить весь сахар, что есть. Вы приходите, а там есть есть:
7 упаковок по 1 кг ценой 79,9 руб. за упаковку и
2 пакета весом 5 кг ценой 349 руб. за упаковку.
Вы берёте всё.
Средняя цена сахара, который вы купили?

показать ответы
0
Автор поста оценил этот комментарий

В подобных задачах скрыта проблема, что люди неплохо владеющие powerquery/powerpivot могут в принципе не помнить функции массива, но при этом уметь в excel на порядок больше знающих.

раскрыть ветку (1)
Автор поста оценил этот комментарий

Я разрешаю гуглить. Людей соображащих видно сразу, если человек понимает, что к чему, найдет решение и так.

А вам в работе помогает powerquery/powerpivot? Я просто не нашел применения всему этому, да и неудобств слишком много было, чтобы всерьез этим заниматься.
Есть sql для выборки данных и excel/powerbi для некоторой корректировки/визуализации. Можете показать пример, где используется powerquery/powerpivot чтобы вот прям никуда без них?

показать ответы
0
Автор поста оценил этот комментарий
ТС, кидайте ещё задачи
раскрыть ветку (1)
Автор поста оценил этот комментарий

)) здесь или отдельным постом?

показать ответы
0
Автор поста оценил этот комментарий

Извините, с утра закрутился. Решение через фильтр

Иллюстрация к комментарию
раскрыть ветку (1)
Автор поста оценил этот комментарий

Это не то. Нужна средневзвешенная ставка, не среднеарифметический остаток.

1
Автор поста оценил этот комментарий
Пользовательская функция, макрос который вызывается как обычная формула. Должны быть разрешены макросы

ps. Чисто академически(но может ещё от сильной лени) я бы использовал запрос Power Qwery (нужен Эксель 2016 и новее)
раскрыть ветку (1)
Автор поста оценил этот комментарий

Да, нашел про UDF. Забил на них, неудобно работать.

PowerQwery - пробовал, не понравилось, долго работает, новый язык, какие-то глюки вылезли при закачке данных.

Интерес был в вероятности того, что условный студент, придя на собеседование, напишет верную формулу без использования формул массива. Условно, из 20 кандидатов про формулы массива знал только один, но не пользовался никогда.

показать ответы
0
Автор поста оценил этот комментарий
Уверен, что есть способ попроще, но пока так)
Иллюстрация к комментарию
раскрыть ветку (1)
Автор поста оценил этот комментарий

Есть) там ниже ответ от GreyCAT555
Представьте просто, что строк с данными не 5, а 500 тысяч))

Автор поста оценил этот комментарий

Во, прикольно! Оно! Такое должно работать и для большего количества условий

раскрыть ветку (1)
Автор поста оценил этот комментарий

Работает, даже если сделать чуть попроще:

Иллюстрация к комментарию
показать ответы
0
Автор поста оценил этот комментарий
У меня тоже, но должен быть процент. :)
раскрыть ветку (1)
Автор поста оценил этот комментарий

Должно получиться так, но мне нужно посчитать без этих фигурных скобок:

Иллюстрация к комментарию
показать ответы
0
Автор поста оценил этот комментарий
Давай уточнять дальше) сумма объемов * ставку = это средняя сумма объемов умноженная на среднюю ставку или каждая отдельно умноженная по продукту 1?
раскрыть ветку (1)
Автор поста оценил этот комментарий

Сумма каждой отдельно ставки * каждый отдельно объём для продукта 1 и всё поделенное на сумму объемов для продукта 1

0
Автор поста оценил этот комментарий
Иллюстрация к комментарию
раскрыть ветку (1)
Автор поста оценил этот комментарий

Ну это не та средняя)) Нужна средневзвешенная. Взвешенная на объём, т.е. именно что средняя стоимость привлечения. Т.е. сумма объёмов*ставку / сумма объёмов и всё с условием, что считается только по продукту 1

показать ответы
0
Автор поста оценил этот комментарий
По идее: =счетесли(а2:а6;"Продукт 1";с2:с6)/счетесли(а2:а6;"Продукт 1")

Самое простое, что в голову пришло на память.
для средней ставки, для суммы остатков тоже самое, только диапазоны меняешь
раскрыть ветку (1)
Автор поста оценил этот комментарий

Что-то не то. У меня в функции "Счётесли" только 2 аргумента, а у вас в первом случае 3 ))

показать ответы
1
Автор поста оценил этот комментарий
Завтра утром, как до работы доберусь
раскрыть ветку (1)
Автор поста оценил этот комментарий

Хорошо, жду

2
Автор поста оценил этот комментарий

Не оптимально, но должно работать: СУММПРОИЗВ(B2:B6;C2:C6;--ЕЧИСЛО(НАЙТИ("Продукт 1";A2:A6)))/СУММЕСЛИМН(B2:B6;A2:A6;"Продукт 1").

раскрыть ветку (1)
Автор поста оценил этот комментарий

Во, прикольно! Оно! Такое должно работать и для большего количества условий

показать ответы
0
Автор поста оценил этот комментарий
Нужно же среднюю ставку посчитать? Как я понял, или же средний остаток?
раскрыть ветку (1)
Автор поста оценил этот комментарий

Именно что ставку.

У вас средний остаток таким образом получается

показать ответы
0
Автор поста оценил этот комментарий
Есть мысль как это можно сделать, но сейчас не за компьютером. Оставлю комментарии, чтобы завтра найти.
раскрыть ветку (1)
Автор поста оценил этот комментарий

Хорошо, жду

показать ответы
2
Автор поста оценил этот комментарий
Ну вот) можно фильтр, впр использовать
раскрыть ветку (1)
Автор поста оценил этот комментарий

Как? Можете показать формулу?

показать ответы
Автор поста оценил этот комментарий

У вас есть тг?

раскрыть ветку (1)
Автор поста оценил этот комментарий

да

5
Автор поста оценил этот комментарий

Я настолько обленился, что всё делаю через сводную таблицу.

раскрыть ветку (1)
Автор поста оценил этот комментарий

Можно, конечно. Но это скорее для того, чтоб что-то быстро посмотреть, а для постоянных расчётных файлов со сводными таблицами не всегда удобно работать.

7
Автор поста оценил этот комментарий
У меня встречный вопрос, а как вы хотите посчитать результат в массиве, без формулы массива?
раскрыть ветку (1)
Автор поста оценил этот комментарий

Ну есть же формулы для массивов - сумм, суммесли, суммеслимн. Может можно как-то еще выкрутиться

показать ответы

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества