Страницы: 1
RSS
Просуммировать итоговые строки заказов, расположенные в разных строках
 
Добрый день!
Помогите пожалуйста с задачей.
Есть лист с множеством заказов, каждый заказ в отдельной таблице и один заказ может быть разбит на несколько таблиц.
Под каждой таблицей есть название заказа и сумма по заказам.
Как найти все название заказа и вывести их на отдельный лист или книгу (это не важно) в сл формате:
Заказ 1 -  203,65
Заказ 2 - 5,33
Заказ 3 - 131,25
Пример файла во вложении.
 
Код
Sub СуммаЗаказов()
    Dim arr As Variant
    Dim y As Long
    With ActiveSheet
        y = .Cells(.Rows.Count, 2).End(xlUp).Row + 1
        arr = .Range(.Cells(1, 1), .Cells(y, 10))
    End With
    Dim dic As Object
    Set dic = CreateObject("Scripting.Dictionary")
    Dim s As String
    Dim i As Long
    Dim d As Double
    For y = 1 To UBound(arr, 1)
        s = arr(y, 2)
        If Left(s, Len("Заказ ")) = "Заказ " Then
            s = Mid(s, Len("Заказ ") + 1, Len(s))
            i = InStr(s, " ")
            If i = 0 Then i = Len(s) + 1
            s = Mid(s, 1, i - 1)
            d = 0
            On Error Resume Next
            d = CDbl(Replace(arr(y - 1, 5), "К оплате ", ""))
            On Error GoTo 0
            dic.Item(s) = dic.Item(s) + d
        End If
    Next
    If dic.Count > 0 Then
        With Workbooks.Add(1).Sheets(1)
            .Cells(1, 1).Resize(dic.Count) = Application.Transpose(dic.keys())
            .Cells(1, 2).Resize(dic.Count) = Application.Transpose(dic.Items())
        End With
    End If
End Sub
Вариант названия темы. Просуммировать итоговые строки заказов, расположенные в разных строках.
 
Цитата
Дмитрий написал: Как поменять тему?
Да Вы даже в цитату себе копировали, а прочитать не удосужились!
Заменят модераторы - так видно?
 
Спасибо большое! То что надо!  
 
Цитата
vikttur написал:
Да Вы даже в цитату себе копировали, а прочитать не удосужились!Заменят модераторы - так видно?
Да, так увидел))
Просуммировать итоговые строки заказов, расположенные в разных строках.
 
При цитировании тоже надо думать, не копировать все подряд
Страницы: 1
Наверх