Translate between Excel-style column letters (A, B, …, Z, AA, AB, …, ZZ, AAA) and 1-based column numbers, and convert A1 cell references to R1C1 notation. Handy when you're scripting CSV pipelines, building Google Sheets formulas, or piping array indexes into openpyxl.
One value per line. Mix letters and numbers freely — the tool detects each input.
| Number | Letters | Note |
|---|---|---|
| 1 | A | first column |
| 26 | Z | end of single-letter range |
| 27 | AA | two-letter range begins |
| 52 | AZ | |
| 53 | BA | |
| 702 | ZZ | end of two-letter range (26 + 26²) |
| 703 | AAA | three-letter range begins |
| 16384 | XFD | Excel hard limit |
| 18278 | ZZZ | end of three-letter range |
Spreadsheet columns use a bijective base-26 system — not standard base-26. The difference matters:
in standard base-26, "AA" would equal 0×26 + 0 = 0, but in spreadsheets every letter contributes (letter − 'A' + 1), so AA = 1×26 + 1 = 27. There's no zero digit. The conversion from number to letters is essentially a repeated n = (n − 1) / 26 with each step contributing 'A' + ((n − 1) mod 26). R1C1 is much simpler: row × column with both 1-indexed.