Quote Originally Posted by masteff View Post
I've noticed in several threads that people give solutions that use "+ 0" to make string of numbers be forced to a number. Why is that better than using the VALUE function? If I use the function, then I know for certain it will make it a number instead of text. Further, by using a function, I make it obvious to future users what is being done whereas "+ 0" is more likely to be seen as unnecessary and therefore be edited out.

Thanks for any insight.
AFAIK both approaches will produce the same results when converting numbers stored as text to numbers.

There is a difference when converting boolean values though.
=VALUE(FALSE) and =VALUE(TRUE) will both return #VALUE!
=FALSE+0 and =TRUE+0 will return 0 and 1.

Perhaps then, the fact that coercing would be expected to be both slightly more efficient and slightly more versatile (consistency) than VALUE() are reasons that addition, negation etc... are used more frequently?

I agree using VALUE() is more transparent. If a user doesn't know what the function does, a quick look in the helpfile will give ample clarification.