Страницы: 1
RSS
Подсчет суммы и количества уникальных значений при фильтре
 
Добрый день!

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

В примере более понятно.
 
ilka789, офис 365, с помощью функциий "уник" и "фильтр"
 
Если поставить в фильтр несколько значений, то не работает...
 
Цитата
при фильтре считались бы уникальные значения слова из словосочетания и их сумма
Макросом попробуйте
Код
Sub test()
Dim arr
Dim dic As Object
Dim dic_Gorox As Object
Dim key
Dim i As Long
Dim iLastRow As Long
Dim rng_vsb As Range
    iLastRow = Cells(Rows.Count, "A").End(xlUp).Row
     Range("C2:E2").ClearContents
     Range("C5:E" & iLastRow).ClearContents
     Set dic = CreateObject("Scripting.Dictionary"): dic.comparemode = 1
     Set dic_Gorox = CreateObject("Scripting.Dictionary"): dic.comparemode = 1
    With ActiveSheet.AutoFilter.Range
         Set rng_vsb = .Offset(1).SpecialCells(12)
         rng_vsb.Copy Range("D5")
       arr = Range("D5").CurrentRegion.Value
    End With
  For i = 1 To UBound(arr)
    dic.Item(arr(i, 1)) = dic.Item(arr(i, 1)) + arr(i, 2)
    If InStr(1, arr(i, 1), "горошек") > 0 Then
      dic_Gorox.Item(arr(i, 1)) = dic_Gorox.Item(arr(i, 1)) + arr(i, 2)
    End If
  Next i
    Range("C2") = dic.Count                           'Разных всего
    Range("D2") = dic_Gorox.Count                     'Разных с горошком
    For Each key In dic_Gorox.Keys
      Range("E2") = Range("E2") + dic_Gorox.Item(key) 'Сумма разных с горошком
    Next
      Range("D5").CurrentRegion.ClearContents
End Sub

Изменено: Kuzmich - 28.10.2021 12:14:19
 
К сожалению не могу использовать коды, так как на работе запрещены макросы :(
 
Код
=СЧЁТЗ(УНИК(A5:A16))
Код
СУММ(--ЕТЕКСТ(УНИК(ЕСЛИ(ЕЧИСЛО((ПОИСК("горошек";A5:A16)));A5:A16))))

Насчет третьего столбца вопрос: что есть сумма "разных с горошком" ?
Из трех идентичных позиций, например, зеленого горошка - какой именно горошек будем признавать в качестве уникальной позиции, чтобы взять её сумму ?
Изменено: Сергей Евдокимов - 28.10.2021 18:17:07
Компьютер никогда не заменит человека (©️ Hannibal Lecter)
 
Сумму всех разных цветов (горошка), которые в фильтре (видимые),

У меня наверное эксель не поддерживает формулу уник :( :(  
 
У вас уже есть вполне рабочая формула для фильтра. Ee нужно только слегка поправить для получения суммы.
Код
=SUM(IF(FREQUENCY(IF(SUBTOTAL(3;OFFSET(B5;ROW(B5:B16)-ROW(B5);;1));IF((A5:A16<>"");MATCH(A5:A16;A5:A16;0)));ROW(A5:A16)-ROW(A5)+1);B5:B16))
Изменено: memo - 28.10.2021 23:25:23
 
Благодарю всех за помощь!
Страницы: 1
Наверх