PeterBartholomew1: To be more explicit, we can call a DLL function in the normal way from the sheet by first registering the function using:
ExecuteExcel4Macro "register(""msvcrt"",""_strrev"",""cc"",""STRREV"")"
and then call it from the sheet with:
=STRREV("hello")
If we select the 'STRREV' portion of this formula and press F9 we get the register id of the function (-996147200.) and an ' @' symbol:
=(@-996147200)("hello")
We can then try to apply this method to a list of registered functions in the first column, along with arguments in subsequent by filling down a simple formula.
But if A1 = -996147200 then =(@A1)("hello") doesn't work and other alternatives seem to crash in current versions. On the other hand: =IF(1,+A1)(B1) does work as expected and could be filled down as required.