Get relative column numbers in range

To get a full set of relative column numbers in a range, you can use an array formula based on the COLUMN function.
In the example shown, the array formula in B4:H4 is:
On the worksheet, this must be entered as multi-cell array formula using Control + Shift + Enter
This is a robust formula that will continue to generate relative numbers even when columns are inserted in front of the range.
The first COLUMN function generates an array of 7 numbers like this:
{2,3,4,5,6,7,8}
The second COLUMN function generates an array with just one item like this:
{2}
which is then subtracted from the first array to yield:
{0,1,2,3,4,5,6}
Finally, 1 is added to get:
{1,2,3,4,5,6,7}
With a named range
You can adapt this formula to use with a named range. For example, in the above example, if you created a named range "data" for B4:H4, you can use this formula to generate column numbers:
You'll encounter this formula in other array formulas that need to process data column-by-column.
With SEQUENCE
With the SEQUENCE function the formula to return relative row columns for a range is simple:
The COLUMNS function provides the count of columns, which is returned to the SEQUENCE function. SEQUENCE then builds an array of numbers, starting with the number 1. So, following the original example above, the formula below returns the same result:
Note: the SEQUENCE formula is a new dynamic array function available only in Excel 365.
Download 100+ Important Excel Functions
Get over 100 Excel Functions you should know in one handy PDF.