Страницы: 1
RSS
Сформировать уникальный список товара и подсчитать кол-во
 
Добрый день.
На одном листе делается приход товара по накладным, забивается название и количество и дата(постоянно добавляемая информация). В накладных встречаются одинаковое наименование товара но уже другая дата и количество (оно и понятно, старое распродано, новое закуплено). Как на отдельном листе СКЛАД сформировать неповторяющиеся наименования и посчитать количество товара для каждого наименования?    
 
Андрей, Доброго дня, смотрите вложение.

Название темы: "Сформировать уникальный список товара и подсчитать кол-во"

Формула массива ctrl+shift+enter  для списка уникальных
=ЕСЛИОШИБКА(ИНДЕКС(Таблица1[Наименование];ПОИСКПОЗ(0;СЧЁТЕСЛИ('Как понял'!$B$1:B1;Таблица1[Наименование]);0));"")

Обычная формула для подсчёта кол-ва
=СУММЕСЛИ(Поступления!G:G;'Как понял'!B2;Поступления!K:K)
Изменено: Wild.Godlike - 23.10.2020 13:13:51
 
Добрый день.
Пытаюсь сделать у себя в файле тоже самое, не работает. Пытаюсь в этом же файле прописать такую же формулу, чтобы еще один список сделать только в другом столбце, не получается. Что-то делаю видимо не так, а что?
 
del
Изменено: buchlotnik - 23.08.2021 17:57:32
Соблюдение правил форума не освобождает от модераторского произвола
 
Андрей, Видимо что-то не так) сложно гадать на кофейной гуще, что именно)
Выкладывайте файл где неполучается.
 
У меня в ячейках формулы заключены в фигурные скобки. Что это?
 
Почитайте, как вводить формулу массива
 
Андрей,
Цитата
Wild.Godlike написал:
Формула массива ctrl+shift+enter  для списка уникальных

Для кого написал кнопочки в тексте?

А чтобы понимать что это можно почитать полезную статью вот тут >>>
Изменено: Wild.Godlike - 24.10.2020 15:41:29
 
=СОРТ(УНИК(ФИЛЬТР(Поступления!G10:G1000000;НЕ(ЕПУСТО(Поступления!G10:G1000000)))))
=СУММЕСЛИ(Поступления!$G$10:$G$1000000;B4;Поступления!$K$10:$K$1000000)
Изменено: Григорий Тимофеев - 24.10.2020 16:51:04
 
Андрей, если правильно понял
Код
Sub dsd()
Dim i As Long, lr As Long, k As Long, col As New Collection, P As Worksheet, S As Worksheet, arr
Set P = Worksheets("Поступления"): Set S = Worksheets("Склад")
lr = P.Cells(Rows.Count, 7).End(xlUp).Row
    For i = 10 To lr
        On Error Resume Next
        If P.Cells(i, 7) <> "" Then
            col.Add P.Cells(i, 7).Value, CStr(P.Cells(i, 7).Value)
        End If
    Next i
ReDim arr(col.Count, 1)
For i = 1 To col.Count
    arr(i - 1, 0) = col(i)
    arr(i - 1, 1) = Application.WorksheetFunction.SumIf(P.Range(P.Cells(10, 7), P.Cells(lr, 7)), col(i), P.Range(P.Cells(10, 11), P.Cells(lr, 11)))
Next i
S.Range("B4:C4").Resize(UBound(arr)) = arr
End Sub
Изменено: Mershik - 24.10.2020 17:28:19
Не бойтесь совершенства. Вам его не достичь.
Страницы: 1
Наверх