Страницы: 1
RSS
Суммировать значения, если встречаются дубликаты, то только первый из них
 
ДОбрый день, форумчане.
Буду благодарен за помощь в простой на первый взгляд задаче.
А   Б
1   2
1   3
1   1
2   3
2   4
3   1
3   4
4   1
Ответ: 7

Суммировать только первые значения колонки Б по соответствующим дубликатам из колонки А.
Спасибо за помощь. файл подготовлен ниже.
 
=СУММПРОИЗВ($B$2:$B$8*(СЧЁТЕСЛИ(СМЕЩ($A$2:$A$8;0;0;СТРОКА($A$2:$A$8)-СТРОКА($A$1));$A$2:$A$8)=1))

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
если, как в примере, критерии упорядочены (неважно - по возрастанию или убыванию), то формула массива
Код
=СУММ(ЕСЛИ(A2:A8<>A1:A7;B2:B8))
ну или аналогичная обычная формула
Код
=СУММПРОИЗВ((A2:A8<>A1:A7)*B2:B8)
Изменено: ikki - 06.10.2014 16:18:07
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
Скрытый текст
JayBhagavan, подскажите, пожалуйста, как считает формула на этом шаге. не хочу бездумно скопировать результа.
спасибо большое.
 
rmaximus, у формулы СМЕЩ() это высота массива. Поэтому в СЧЁТЕСЛИ() передаётся сначала с 1-й по 1ю яч. массив, потом с 1-й по 2-ю и т.д. У меня получилось прояснить вопрос?

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
если неупорядочены, то можно так:

=СУММПРОИЗВ((СТРОКА((A2:A8-1=ПОИСКПОЗ(A2:A8;A2:A8;0))*B2:B8)
Живи и дай жить..
 
Слэн, на всякий случай прокомментирую своё решение с учётом Вашего акцента насчёт сортировки. Формула не привязана к сортировке. :)

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
Цитата
JayBhagavan пишет: СМЕЩ($A$2:$A$8;0;0;СТРОКА($A$2:$A$8)-СТРОКА($A$1)
Чуть сократим - ..СМЕЩ(A2;;;СТРОКА(A2:A8)-1)..
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
 
Владимир, чтобы было понятно откуда единица, указал столбец ячейки шапки, от которой ведётся отсчёт. Если шапка сместится в ту или иную сторону, то не отследив этого, пользователь получит ошибочный результат. Стараюсь перестраховываться. За оптимизацию спасибо, Вам. На Ваших примерах многому научился, но ещё не всему. :)

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
Страницы: 1
Наверх