Forum Discussion
Autofill alphabet
- Jul 07, 2021
The attached has a legacy formula as well as the dynamic array formula
= MID(ADDRESS(1, ROW()),2,1+(ROW()>26))I could also include a Lambda function version but that is only useful with the beta release versions of Excel. I am not sure whether APL supported functional programming style; FORTRAN IV certainly didn't!
The attached has a legacy formula as well as the dynamic array formula
= MID(ADDRESS(1, ROW()),2,1+(ROW()>26))I could also include a Lambda function version but that is only useful with the beta release versions of Excel. I am not sure whether APL supported functional programming style; FORTRAN IV certainly didn't!
- PeterBartholomew1Jul 08, 2021Silver Contributor
Hi Chuck, as a former APL developer you might be more tolerant than I am of expressions that need to be 'decoded' as opposed to 'read'. A few years ago (2015) I realised that I profoundly disagreed with the proponents of a financial modelling standard as to what constitutes 'best practice' in writing spreadsheet solutions.
[By 'profoundly disagreed' I mean that, for about 25% of their statements, I would replace the word NEVER by ALWAYS]
If you really want to investigate 'new tricks', I could take you through some of the ideas I am exploring. By way of warning, the starting point is 'forget what you think you know about spreadsheets' and begin from scratch with 365 dynamic arrays. No direct cell references and avoid relative referencing wherever possible.
To go from column codes to column numbers I might write
= LET( n, LEN(string), k, SEQUENCE(n), chr, MID(string, k, 1), code, CODE(chr), v, BITAND(code,63), p, 26^(n-k), SUM(v*p) )even though
= COLUMN(INDIRECT(string&1))would be shorter. The former will accept "XFE" as a string to convert, whereas the latter throws a #REF! error.