This tutorial will show you how to calculate the running total (cumulative sum) in Excel using the RTOTAL function.

The running total is a cumulative sum of the selected values. **If you have n values, the first record is n1.** **The second is SUM(n1+n2), the third is SUM(n1 + n2 + n3), and so on.** You can calculate it row-by-row or column-by-column using **formulas**.

## How to calculate the running total in Excel?

Here are the steps to calculate the cumulative sum:

- Enter the =RTOTAL(B3:B14) formula.
- Select the range where you want to calculate the cumulative sum.
- RTOTAL function returns with the running total.

Good to know that **RTOTAL is a dynamic array function**; Excel will spill the result into an array.

**Syntax**

`=RTOTAL(range)`

**Arguments**

RTOTAL function uses a single, required argument: the selected range.

### Example

In the example, we have the sales data in column B. Use the RTOTAL function and apply the following formula:

`=RTOTAL(B3:N14)`

The function will return the cumulative sum of values in each row.

**Explanation:**

Let us analyze the result. In cell C3, the function returns with the first value in a range. Cell C4 contains the second value in the “running total” column.

`=C4 = B3+B4 = 2000 + 3000 = 5000`

Following the logic mentioned earlier:

`=C5 = B3+B4+B5 = 2000 + 3000 + 8000 = 13000`

**Note:**

The RTOTAL function works fine even if you use columns to calculate the running total. In the following example, you want to calculate the cumulative sum horizontally.

Formula:

`=RTOTAL(C2:H2)`

**How to implement the user-defined function?** You can copy the function to your Workbook. Press Alt + F11 to open the VBA editor. Create a new module and paste the code.

Here is the code of the RTOTAL function:

```
Function RTOTAL(dRange As Range, Optional n As Boolean = True) As Variant
Dim cRow As Long
Dim rt As Double
Dim r() As Double
If dRange.Rows.count = 1 Then
ReDim r(1 To dRange.Columns.count)
For cRow = 1 To dRange.Columns.count
rt = rt + dRange.Cells(1, cRow).Value
r(cRow) = rt
Next cRow
RTOTAL = r
Else
ReDim r(1 To dRange.Rows.count)
rt = 0
For cRow = 1 To dRange.Rows.count
rt = rt + dRange.Cells(cRow, 1).Value
r(cRow) = rt
Next cRow
If n Then
RTOTAL = Application.Transpose(r)
Else
RTOTAL = r
End If
End If
End Function
```

### Calculate the Running Total using the SUM function

To manually create a formula, you must use the SUM function and apply absolute and relative references.

In the example, use the following formula:

`=SUM($B$3:B3)`

Good to know that **$B$3** is an **absolute reference** and **B3** is a **relative reference**. Click inside the formula and press F4 twice to fix the B3 cell.

**Additional resources and related formulas:**