Convert an A1-style spreadsheet column label to a number.

Version 1.12.0.0 (2.35 KB) by DS
ABC2NUM translates an A1-style (absolute) column label reference to a number; NUM2ABC does inverse.
1.7K Downloads
Updated 23 Mar 2012

View License

ABC2NUM(S) returns the number corresponding to the spreadsheet column represented by the reference string, S. The input string, S, may contain the ascii letters A-Z, in the format commonly employed by spreadsheet programs such as Calc and Microsoft Excel[1]. Other characters, including lower case letters, a-z, are ignored.

NUM2ABC(D) returns the A1-style string label corresponding to the appropriate spreadsheet column represented by the specified integer, D. The specified integer must be greater than or equal to one.

references:
[1] Abraham, R., Burnett, M. and Erwig, M., "Spreadsheet Programming" Encyclopedia of Computer Science and Engineering, (ed. B.J. Wah), 2804-2810, 2009
DOI: 10.1002/9780470050118.ecse415

-----
Please note: There are many interesting submissions on FEX which provide similar results (see below).

#5942 - xlcolumn
#32843 - Excel column header
#30180 - Calculate Excel range
#28343 - Column Converter for Excel
#27182 - Excel Column Conversion
#15748 - Excel Column Number To Column Name
#12796 - excelcolumn
#6706 - Excel Named Ranges

Cite As

DS (2024). Convert an A1-style spreadsheet column label to a number. (https://www.mathworks.com/matlabcentral/fileexchange/14008-convert-an-a1-style-spreadsheet-column-label-to-a-number), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2007b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Acknowledgements

Inspired by: Convert decimal integer to arbitrary base.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
1.12.0.0

Edited info text; no code changes.

1.11.0.0

Edited info text; no code changes.

1.10.0.0

Edited info text; no code changes.

1.9.0.0

Added ref info.

1.3.0.0

.

1.2.0.0

Extended translation to cover arbitrary number of digits; included complementary function num2abc.

1.1.0.0

fixed string output

1.0.0.0

Fixed m-lint warnings.