Если я понял, вы правильно, следующий код будет просуммировать все значения в колонке E (начиная с клетки Е2), и поместить результат в ячейке B2. (Вы можете изменить расположение легко)
Примечания: Я добавил «Вариант 2», вместо того, чтобы использовать For
петли, вы можете использовать WorksheetFunction.Sum
суммировать все значения внутри диапазона без необходимости перебирать.
Код
Option Explicit
Sub SumColE()
Dim cumul As Long, I As Long, E As Long
With Worksheets("Sheet1") ' <-- modify "Sheet1" to your sheet's name
I = .Range("E2").End(xlDown).Row '<-- get last row in Column E
cumul = 0
' option 1: using a loop
For E = 2 To I
cumul = cumul + .Range("E" & E) '<-- Sum up values in Column E
Next E
.Range("B2").Value = cumul '<-- put the result in B2
' option 2: using WorksheetFunction SUM
.Range("B2").Value = Application.WorksheetFunction.Sum(.Range("E2:E" & I))
End With
End Sub
Это сообщение, как представляется, [вне темы] (http://stackoverflow.com/help/on-topic) в соответствии с * Вопросы, которые не имеют достаточной информации, чтобы диагностировать проблему . * Пожалуйста, отредактируйте свое сообщение, чтобы добавить достаточную информацию, чтобы люди могли вам помочь. – bahrep
Вы хотите найти сумму для столбца E (поиск последней строки с использованием 'I = .Range (" E2 "). End (xlDown) .Row') или столбец B (' cumul = cumul + Cells (E, 2) ')? –
эй, Моя вкладка такая, как вкладка Name E1: production, E2: 56, E3: 67, E4: 67 и т. Д. ... и я хочу получить сумму для всех этих столбцов – Houyam