I think you might be able to get partway to what you are after using the evaluate function.
Basically, I think what you are trying to do is set up a series of functions, then use some other part of the worksheet to conditionally determine which function is applied to some conditionally-specified data. I suspect that in almost all cases it would be easier to do this using "normal" Excel methods, but use of Evaluate might make for an interesting alternative.
So here goes:
First, define a single-cell named range called x. If you like, you can make the range the result of an offset function so that by simply changing the value of one or two cells, you can control which cell "x" refers to.
E.g. put the value 3, say, into cell B1 then any other value you like into cells B2 to B6, say.
Now define x as: =offset($B$1, $B$1,0,1,1).
So, if B1 = 3, then x = the value in cell B4.
Now set up E1 = 2, and:
E2 = "sin(x)"
E3 = "cos(x)"
E4 = "x*log(1/(1+(cos(x)^2)))"
...or any other formulae you like.
Then define the name "genfunc" as = EVALUATE(offset($E$1,$E$1,0,1,1))
So, if E1 = 2, then genfunc = "=cos(x)".
Now type =genfunc into any cell, say F1.
You should get the value cos(B4) in cell F1.
I know that looks complicated, but I've tried it an it works. Try it out and see.
Basically it means you can perform conditionsl function calculations. I think that, with a little imagination it should be possible to do things this way which would be impossible, or at least very much more complicated, using "normal" Excel methodologies.
However, my imagination starts to fade into the background after 2 am, and it is now 02:24, so I'll leave that as an exercise for the morning people...
Tony