Есть отчет из 1С который содержит список клиентов и под ними в иерархии даты продаж с кол-вом и суммами. Задача сделать из этого отчета другой, который бы в удобном виде мог показать когда клиент совершил последнюю покупку. Т.е. из списка дат удалить все старые, оставить только самую новую и перенести её в столбец убрав иерархию. Файл прилагаю. Если получится перенести и данные последней продажи в столбца далее, то будет совсем уж круто. Сам никак не могу совладать с иерархией, подскажите пожалуйста можно ли это как-то реализовать? Большое спасибо. P.S. Находил какие-то схожие темы, но такой вроде не удалось найти мне. P.P.S. имена заменил на числа в таблице, надеюсь это не критично
Sub T()
Dim i&, Cout$, lSellDate$, lSellCount&, lSellAmount@
For i = Cells(Rows.Count, 1).End(xlUp).Row To 7 Step -1
Select Case Cells(i, 1).IndentLevel
Case Is = 4
If lSellDate$ = "" Then
lSellDate$ = Cells(i, 1): lSellCount = Cells(i, 4): lSellAmount = Cells(i, 6)
End If
Cells(i, 1).EntireRow.Delete Shift:=xlUp
Case Is = 2
Cells(i, "H") = lSellDate: Cells(i, "I") = lSellCount: Cells(i, "J") = lSellAmount
lSellDate = Empty: lSellCount = Empty: lSellAmount = Empty
Case Else
Cells(i, 1).EntireRow.Delete Shift:=xlUp
End Select
Next i
End Sub
Анварбек Телекаев, Вариант. =SUMIFS('1'!D$7:E$67;'1'!$A$8:$B$68;"*.";'1'!$A$7:$B$67;$L3) и =SUMIFS('1'!F$7:G$67;'1'!$A$8:$B$68;"*.";'1'!$A$7:$B$67;$L3) Первую и последнюю формулы позаимствовал у Бороды (не вижу смысла изобретать велосипед), лишь использовал немассивный вариант. Листы переименовал для удобства на 1 и 2.
_Boroda_, сработало отлично, правда файл рабочий был большой и пришлось диапазон расширить. Формулы считались долго, но в целом результат получился нужный. Большое спасибо, удивлен даже, что формулами просто удалось такую конструкцию создать. Пытливый, это VBA или что-то другое, если не сложно подскажите пожалуйста мне, как новичку, как правильно применить. Спасибо! memo, ваше сообщение увидел после написания ответа, отпишусь чуть позже. Спасибо!