B = XLSCOL(A) takes input A, and converts to corresponding output B. The input may be a number, a string, an array or matrix, an Excel range, a cell, or a combination of each within a cell, including nested cells and arrays.
The output maintains the shape of the input and attempts to "flatten" the cell to remove nesting.
Numbers and symbols within strings or Excel ranges are ignored.
xlscol(256) % returns 'IV'
xlscol('IV') % returns 256
xlscol('A1:IV65536') % returns [1 256]
See more examples in help comments.
CELLFUN and ARRAYFUN allow the program to recursively handle multiple inputs. An interesting side effect is that mixed input, nested cells, and matrix shapes can be processed.
I adapted the modular math from Mike Sheppard's program ExcelCol, to properly handle the conversion from column number to strings. His program is at http://www.mathworks.com/matlabcentral/fileexchange/27182-excel-column-conversion
Works as expected. Thank you!
small script, extremely easy to use. thanks!
Even 8 years after release, well done mate!
Works great! Very helpful.
Vectorized loop under ISNUMERIC, and added right parenthesis to incorrect example.