Going back to the point of efficiency... I don't know if VALUE is more/less efficient than 0+, after all XL is still having to a make "a" calculation... what we do know is that double unary -- is regarded as being slightly quicker method of coercion than 0+, 1* etc... single unary quicker still of course but this inverts the results so not that useful in most circumstance ... regards the double unary, this is one of the reasons why in SUMPRODUCTs you often see the:
SUMPRODUCT(--(x=y),--(y=z),values)
approach used in preference to
SUMPRODUCT((x=y)*(z=a)*values)
(there are other advantages to this approach - but limitations also when compared to the * method)
If we disregard efficiency args and look only at "transparency" I would say masteff and Palmetto both have valid points... that is to say yes I would agree that the purpose of:
is certainly more blatant to the lay person than
however that said I would certainly err on Palmetto's side in so far as : "if my end users know nothing of coercion do I really want them altering formulae ?"
I would argue most people capable of manipulating even remotely complex formulae either understand coercion or worse case scenario are inquisitive enough to test what 0+ does thereby establishing the purpose of 0+ in the first instance. I would say that 0+ is used often in preference to -- because the latter is even less intuitive.
At the end of the day our personal preferences for functions etc pretty much always dictate our spreadsheet design and unless those preferences are hideously inefficient when compared to alternatives I don't think that's an issue in the slightest. As a general rule in XL there are countless ways to achieve the same goal and understanding which to be THE optimal is in reality a never ending process... I would go so far as to say there are very few who actually know the answer, and by very few I mean a handful (and sadly that does not include any of us)
Bookmarks