Страницы: 1
RSS
МАКСЕСЛИ или выбрать значение привязанное к максимальному по условиям
 
Добрый день. Прошу указать направление, после отпуска туго соображается:
Есть перечень товаров-аналогов с указанными кол-вами и ценами. Мне нужно с привязкой к производителю и номеру товара выбрать цену, которая соответствует максимальному количеству. Маленький пример во вложении, там гораздо лучше объяснено.
Буду очень благодарна за подсказку.

п.с. в примечании в файле 'скуба' - это есть колонка A 'номер'
Изменено: anyarceva - 20.04.2015 10:57:18
 
если доп столбцы не возбраняются
Лень двигатель прогресса, доказано!!!
 
Без Формул:
Отсортировать по количеству, затем по цене (по убыванию)
Удалить дубликаты по номеру и производителю

Можно формулой массива: :)
Код
=МАКС(ЕСЛИ(K2=$A$2:$A$8;ЕСЛИ(L2=$B$2:$B$8;ЕСЛИ(МАКС(ЕСЛИ(K2=$A$2:$A$8;ЕСЛИ(L2=$B$2:$B$8;$D$2:$D$8;"");""))=$D$2:$D$8;$E$2:$E$8;"");"");""))
Изменено: Alexander88 - 20.04.2015 12:05:57
 
У меня вот такое решение получилось (массив и наибольший)
 
crazy_mammy, Alexander88, спасибо огромное.
мне бы теперь это в макрос засунуть. буду разбираться
я так понимаю, без массивов тут никак не обойтись
 
Код
Sub anyarceva()
Dim lstr%, lstr2%, i%
lstr = Cells(Rows.Count, 1).End(xlUp).Row
lstr2 = Cells(Rows.Count, 11).End(xlUp).Row
Range("K1:N100").ClearContents
    Range("A1:B" & lstr).AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("K1:L1"), Unique:=True
    Range("K1") = "Скуба"
    Range("D1:E1").Copy Range("M1:N1")
    With Range("A1:E" & lstr)
        .Sort [A1], 1
        .Sort [D1], 2
    End With
    For i = 2 To lstr2
        Cells(i, 14) = Application.VLookup(Cells(i, 11), Range("A1:E" & lstr), 5, 0)
        Cells(i, 13) = Application.SumIf(Range("A2:A" & lstr), Cells(i, 11), Range("D2:D" & lstr))
    Next i
End Sub
Изменено: Владимир - 20.04.2015 14:53:51
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
 
Владимир, спасибо! все получилось
 
Пример в файле
Страницы: 1
Наверх