Dim i As Integer, j As Integer, k As Integer, l As Integer
i = ActiveSheet.PivotTables(1).TableRange2.Rows.Count + 1
j = ActiveSheet.PivotTables(1).TableRange2.Columns.Count
k = ActiveSheet.PivotTables(1).TableRange2.Rows.Count - 7
For l = 2 To j
Cells(i + 2, l).Value = WorksheetFunction.SumIf(Range(Cells(9, l), Cells(i, l)), ">0", Range(Cells(9, l), Cells(i, l)))
Next l
Привет, я пытаюсь использовать функцию sumif в vba. Дело в том, чтобы сделать это в цикле, который зависит от количества столбцов. Я не знаю, что здесь не так, но я думаю, что, вероятно, что-то с критериями, которые я взял. Я хочу суммировать все ячейки с числом выше 0 и не знаю, как это написать.
SumIf
диапазонRange(Cells(9, 2), Cells(i, 2))
не продвигается с помощью циклаFor
, это всегда столбец B. Вы имели в видуRange(Cells(l, 2), Cells(i, 2))
? или что-то подобное? - person Shai Rado   schedule 16.12.2016Cells(i + 2, l).Value = WorksheetFunction.SumIf(Range(Cells(9, l), Cells(i, l)), ">0", Range(Cells(9, l), Cells(i, l)))
- person Cezary   schedule 16.12.2016