keepcalculator

06 Numbers and Powers

Total Columns in Range: Count in Excel & Sheets

Card No. 06·51325 · Updated · Standard formula, shown below

Total columns 3 columns
Start column number
1
You entered
End column number
3
You entered
You enter
Start column number, End column number
You get
Total columns
Rounding
0 dp

To find the total number of columns in a range in Excel or Google Sheets, use the COLUMNS function: =COLUMNS(A1:C10) returns 3. You enter the range, and the function returns the count of columns it spans, regardless of how many cells are filled.

Formula

The formula is simple: Total Columns = End Column Number − Start Column Number + 1

Where:

  • Start Column Number – the numeric position of the first column in the range (A=1, B=2, … Z=26, AA=27).
  • End Column Number – the numeric position of the last column in the range.

This works for any contiguous range. For a single column (e.g., A:A), start and end are the same, so the result is 1.

Worked Example

Using the default values from the calculator: start column = 1 (A), end column = 3 (C).

  1. Subtract start from end: 3 − 1 = 2
  2. Add 1 to include the starting column: 2 + 1 = 3

So the range A:C contains 3 columns. The calculator shows the same result.

Why You Might Need This

Knowing the column count is useful when writing formulas that depend on the width of a data table. For example, if you have a dataset that starts at column B and ends at column F, you may need to reference that width in an OFFSET or INDEX formula. It also helps when you want to loop through columns in a script or when you are summarizing how many variables a table holds.

In Excel and Google Sheets, the COLUMNS function is the direct way to get this number. It takes one argument: the range. It does not count empty cells; it counts the column positions themselves.

How to Use the COLUMNS Function

In any spreadsheet, type:

  • =COLUMNS(A1:C10) → returns 3
  • =COLUMNS(A:A) → returns 1
  • =COLUMNS(A1:Z100) → returns 26

The range can be a reference to another sheet: =COLUMNS(Sheet2!A1:D1) returns 4.

You can also use it with named ranges: =COLUMNS(MyData) returns the number of columns in that named range.

Common Mistakes and Misconceptions

A frequent error is confusing COLUMNS with COLUMN. COLUMN() returns the number of a single column (e.g., =COLUMN(C1) returns 3). COLUMNS() returns the count of columns in a range. They are different functions.

Another mistake is using COUNTA to count columns. COUNTA counts non-empty cells, not column positions. If you have a range A1:C10 but only A1 and C1 have values, COUNTA(A1:C10) returns 2, while COLUMNS(A1:C10) returns 3.

Also note that the range can be a full row reference like 1:3, which includes all columns in rows 1 to 3. =COLUMNS(1:3) returns the total number of columns in the sheet (e.g., 16,384 in modern Excel). That is rarely what you want, but it is a valid use.

Limits and Edge Cases

Spreadsheets have a maximum number of columns. In Excel 2007 and later, and in Google Sheets, that maximum is 16,384 (column XFD). Older Excel versions (2003 and earlier) had 256 columns (IV). If you reference a full row, COLUMNS returns that maximum.

If you use a range that is not contiguous (e.g., A1:C1,E1:G1), the COLUMNS function may not work as expected. In Excel, it will return an error or only count the first area. In Google Sheets, it might treat it as two separate ranges. It is best to use contiguous ranges for this function.

When you need to count columns in a dynamic range (one that changes size), combine COLUMNS with OFFSET or INDEX. For example, =COLUMNS(OFFSET(A1,0,0,1,5)) returns 5, even if the actual data extends further.

Alternatives to COLUMNS

If you are working in a scripting context (Google Apps Script or VBA), you can get the column count from the range object:

  • In VBA: Range("A1:C10").Columns.Count returns 3.
  • In Google Apps Script: sheet.getRange("A1:C10").getNumColumns() returns 3.

In Excel formulas, you can also use COLUMN(EndCell) - COLUMN(StartCell) + 1 to get the same result without the COLUMNS function. That is useful when you have the start and end cells separately.

Why the +1 Matters

Many people forget the +1 when calculating manually. If a range starts at column 2 (B) and ends at column 5 (E), subtracting gives 3, but the actual columns are B, C, D, E – that is 4 columns. The +1 includes the starting column. The COLUMNS function handles this automatically, but if you are building your own formula, always remember to add 1.

Frequently Asked Questions

Does COLUMNS count empty columns?

Yes. It counts the number of column positions in the range, regardless of whether cells are empty or filled. If you reference A1:C10 and only A1 has data, it still returns 3.

What is the difference between COLUMN and COLUMNS?

COLUMN returns the number of a specific column (e.g., =COLUMN(D1) returns 4). COLUMNS returns the count of columns in a range (e.g., =COLUMNS(A1:D1) returns 4). They are often confused.

Can I count columns across multiple sheets?

No, a range must be within one sheet. If you need to count columns across sheets, you would have to sum the counts from each sheet separately.

What happens if I use COLUMNS on a full row reference?

It returns the total number of columns in the sheet. In Excel 2007+ and Google Sheets, that is 16,384. In Excel 2003, it is 256.

Is there a way to count columns that contain data?

Yes, but not with COLUMNS. Use =SUMPRODUCT(--(COUNTIF(OFFSET(A1,,,1,COLUMNS(range)),"<>"&"")>0)) or a simpler approach: use =COUNTA(A1:C1) to count non-empty cells in the first row, assuming each column has a header. That gives the number of columns with data in that row.

Why does my COLUMNS formula return #VALUE?

This usually happens when the range is not valid, such as referencing a sheet name with a space without quotes, or using a non-contiguous range in a way the function does not accept. Check that the range is typed correctly and is contiguous.

Related

Formula used
in start_col | Start column number | - | 1 | 1 | 16384
in end_col | End column number | - | 3 | 1 | 16384
out total | Total columns | columns | end_col - start_col + 1 | 0

Each line is one input (in, sel, list) or one result (out: label, unit, formula, decimals). How the calculators work

Method: the standard formula for this calculation, rounded as each result states. See how the calculators work or report an error.

More cards in this drawer

The whole Numbers and Powers drawer →