Мне нужно вставить формулу массива в несколько ячеек в первый раунд, а затем суммировать ячейки в диапазоне. Тем не менее, диапазон не всегда один и тот же, и, следовательно, мне придется тянуть номера строк, определяющих диапазон от переменных. Это не похоже на работу:Вставка формулы массива для суммирования диапазонов ячеек с переменными строками в excel vba
Set ssheet = ThisWorkbook.Sheets("1 to 50")
With ssheet.Range(Cells(1, 8), Cells(3200, 8))
Set x = .Find("Rate", LookIn:=xlValues, Lookat:=xlWhole)
tworow = x.Row
Set y = .Find("Total=", LookIn:=xlValues, Lookat:=xlWhole)
nextrow = y.Row
End With
l = tworow + 1
m = nextrow - 1
ssheet.Cells(nextrow, 9).FormulaArray = "=sum(round("I" & l & ":" & "I" &m,2))"
End sub
можно выбрать нужный диапазон с помощью этого:
myrange = "I" & l & ":" & "I" & m
Range(myrange).Select
Но код для формулы суммы выдает «ожидаемый конец заявление». Пожалуйста помоги.
Что мне в основном нужно, так это использование переменных для номеров строк в коде ArrayFormula. – Swopnil
попробуйте заменить «charatcers» на биты внутри раунда: '' = sum (round ('I' & l & ':' & 'I' & m, 2)) "' – maxhob17
@dani это формула массива с он округляет значения в каждой из ячеек диапазона и только после этого суммирует их. Эквивалент CSE в excel – Swopnil