Wauvel

Excel like a finance pro.

← The library

VBA · Ranges

Offset

A range a number of rows and columns away from another.

CommonDifficulty 1100 · Proficient
Practice · 2 questions →

When to use it

Offset returns a range a number of rows and columns away from another, the same size. Negative values go up and left.

The code

Code
ActiveCell.Offset(1, 0).Select   ' one row down

Worked examples

  • One row down

    ActiveCell.Offset(1, 0).Select One row down

    Recorded relative macros use this.

  • Neighbor column

    rng.Offset(0, 1).Value = rng.Value * 2 Writes into the column to the right of a range

    Parallel columns.

  • Append position

    Range("A1").Offset(lastRow, 0) The first blank row below the data

    Append position.

Worth knowing

  • Offset keeps the size; Resize changes it.
  • Combine: Range("A1").Offset(1).Resize(n, 3).
  • Cells(r, c) is often clearer than Offset math.

Where it goes wrong

  • Offsetting above row 1 or left of column A errors.
  • Offset(1) with one argument shifts rows, not columns.

Related

Learn the moves here — or let Wauvel run them on your numbers.

Meet your AI CFO →

One CFO-grade Excel tip a week

A short, practical email for finance operators — functions, shortcuts, and the moves that save an afternoon. Free, unsubscribe anytime.