Please see below table, I want to put subtotals 1 rows down from the last row. This has worked well for row C and D (using the below code), however the rest of the columns wont always have info in every row.

```
lastrow = Cells(Rows.Count, "C").End(xlUp).Row + 1
Cells(lastrow + 1, 3).Formula = "=sum(C1:C" & lastrow & ")"
lastrow = Cells(Rows.Count, "D").End(xlUp).Row + 1
Cells(lastrow + 1, 4).Formula = "=sum(D1:D" & lastrow & ")"
```

How can I insert a formula to the right of my other subtotals (highlighted in yellow) as I need them all on the same row?

Just use one column to determine the last row (Using `Column A`

here)

Also, the bottom of your sum range is indicated by the last row (`LR`

), but where you want your formulas to go is 2 rows below (hence the `LR + 2`

)

```
Dim ws as Worksheet: Set ws = ThisWorkbook.Sheets("Sheet1") '<-- Update
Dim LR as Long
LR = ws.Range("A" & ws.Rows.Count).End(xlUp).Row
ws.Range("C" & LR + 2).Formula = "=Sum(C2:C" & LR & ")"
ws.Range("D" & LR + 2).Formula = "=Sum(D2:D" & LR & ")"
```

### Answer：

Try:

```
Option Explicit
Sub test()
Dim LastRow As Long, LastColumn As Long, Column As Long
With ThisWorkbook.Worksheets("Sheet1")
LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
For Column = 3 To 10
.Cells(LastRow + 2, Column) = Application.WorksheetFunction.Sum(.Range(.Cells(2, Column), Cells(LastRow, Column)))
Next Column
End With
End Sub
```

Tags: excelexcel, input