Внутреннее суммирование диапазонов.
Есть отсортированные данные по опред. объекту.(столбец С)
Нужно добавить после сделать внутреннее суммирование, по объектам.
1. добавляю пустые строчки
2. Записываю слово в нее "ИТОГО"
х-кол-во непустых строк...
x = ActiveCell.Offset(10000, 0).End(xlUp).Row
For i = x To 11 Step -1
'ПРОВЕРКА РАВЕНСТВА ОБЪЕКТОВ
If Cells(i, 3) <> Cells(i - 1, 3) Then
Cells(i, 3).EntireRow.Insert
Cells(i, 2) = "ИТОГО:"
Cells(i, 2).Select
Selection.RowHeight = 17.25
Selection.Font.Bold = True
End If
If i < 11 Then Exit For
Next i
Вопрос №1.
Selection.RowHeight = 17.25 - срабатывает для всех строк, а
Selection.Font.Bold = True - только для опред. кол-ва нижних строк,
не могу понять почему, вообще для меня не очень привычен обратный цикл.
Я его не совсем понимаю...
Почему нельзя при добавлении строк организовать прямой цикл...
Вопрос №2.
Как в соседн. ячейку добавить суммирование.
Вернее как правильно поставить в цикле условие?
Раньше было условие выполнять до тех пор пока формат не станет обычным,
а сейчас так как в отчет копируются только значения (без форматов),
то условие цикла нарушено:
Do While ActiveCell.NumberFormat <> "General"
Cells.Find(What:="ИТОГО:", After:=ActiveCell, LookIn:=xlValues, _
LookAt:=xlWhole, SearchOrder:=xlByRows, MatchCase:=True). _
Offset(0, 1).Activate
ActiveCell.NumberFormat = "#,##0.00"
ActiveCell.HorizontalAlignment = xlCenter
ActiveCell.Font.Bold = True
ActiveCell.Formula = "=sum(B" & ActiveCell.Offset(-2, -1).Row & ":B" _
& ActiveCell.Offset(-2, -1).End(xlUp).Row & ")"
ActiveCell.Offset(0, -1).Activate
ActiveCell.Font.Bold = True
ActiveCell.HorizontalAlignment = xlCenter
If ActiveCell.NumberFormat = "General" Then ActiveCell.Offset(0, 1) = _
[b7].Formula
Loop