The OFFSET function lets you create a reference to a range of cells that is a certain number of rows and columns away from a cell or range of cells. You can use OFFSET to say something like “move one cell down and two cells over”. Suppose you simply want to reference the next cell down in a column. If you are starting in cell B3
Below is an example in Excel. Cells (yellow) only contain numbers. There is a formula in cell C2 that is displayed in D2. It points to cell A2, moves down one row and moves across zero columns.
The syntax of OFFSET according to Microsoft is as follows.
- Reference Required. The reference from which you want to base the offset. Reference must refer to a cell or range of adjacent cells; otherwise, OFFSET returns the #VALUE! error value.
- Rows Required. The number of rows, up or down, that you want the upper-left cell to refer to. Using 5 as the rows argument specifies that the upper-left cell in the reference is five rows below reference. Rows can be positive (which means below the starting reference) or negative (which means above the starting reference).
- Cols Required. The number of columns, to the left or right, that you want the upper-left cell of the result to refer to. Using 5 as the cols argument specifies that the upper-left cell in the reference is five columns to the right of reference. Cols can be positive (which means to the right of the starting reference) or negative (which means to the left of the starting reference).
- Height Optional. The height, in number of rows, that you want the returned reference to be. Height must be a positive number.
- Width Optional. The width, in number of columns, that you want the returned reference to be. Width must be a positive number.
You may be wondering where you might need to use the OFFSET function. One use case is with recursive LAMBDAs.