Is there a script to bypass 50000 characters for in-cell formula?
If the length of {B!A1:A100; ........ ; CA!DZ1:DZ100}
is greater than 50 thousands characters consider to build a custom function that build the array for you. You could "hard-code" the references or list them as text on a range to be read by your script.
Then, the resulting formula could look like this:
=ARRAYFORMULA(SPLIT(QUERY(MYCUSTOMFUNCTION(),
"select * where Col1 is not null order by Col1 asc", 0), " "))
or like this
=ARRAYFORMULA(SPLIT(QUERY(MYCUSTOMFUNCTION(A1:A1000),
"select * where Col1 is not null order by Col1 asc", 0), " "))
(assuming that you have 1000 references).
A custom function works because it on the Google Sheets side instead of having a formula that exceeds the cell content limit it will use just few characters and because by using good practices it's possible to make that it takes less than the 30 seconds time execution limit for them.
It's worth to note that if the MYCUSTOMFUNCTION()
variant (without arguments) is used, it only will be recalculated when the spreadsheet is opened but the MYCUSTOMFUNCTION(A1:A1000)
variant (with a range reference as argument) will be recalculated every time that a cell in the range reference changes.
References
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…