Why use =+B23 instead of =B23?

Excel Facts

Move date out one month or year
Use =EDATE(A2,1) for one month later. Use EDATE(A2,12) for one year later.
justme said:
I feel silly for asking, but how else do you learn?

+B1*SUM(C1:D1)

is the Lotus 123 way entering a formula which Excel also understands. Thus:

=+B1*SUM(C1:D1)

is mixing a Lotus habit with Excel's way of entering a formula.
 
Upvote 0
I really don't know, perhaps the + converts the value in B23 to number in the same way that -- does?
 
Upvote 0
I really don't know, perhaps the + converts the value in B23 to number in the same way that -- does?
_________________


Nope: +A1 (where A1 has FALSE in it) yields FALSE, whereas --A1 yields 0.

Gene Klein
 
Upvote 0
It has nothing to do with the double negation coercer.

The leading "+" is for compatibility with Lotus, which does nothing good or bad to Excel formulas, except that it looks odd. Lotus formulas began with "+", "-", or "@". If the formula has a "-" sign in front of it then that would be significant, but a "+" sign for Excel means nothing significant, in your case sort of like saying =0+B23. As you can see, since the leading "+" does nothing and means nothing, it can be deleted.
 
Upvote 0
Funny that Excel will convert "@SUM(range)" to "=SUM(range)", but won't convert the +.

Smitty
 
Upvote 0
Tom Urtis said:
It has nothing to do with the double negation coercer.

The leading "+" is for compatibility with Lotus, which does nothing good or bad to Excel formulas, except that it looks odd. Lotus formulas began with "+", "-", or "@". If the formula has a "-" sign in front of it then that would be significant, but a "+" sign for Excel means nothing significant, in your case sort of like saying =0+B23. As you can see, since the leading "+" does nothing and means nothing, it can be deleted.

The translation you make from

=+B23

to

=0+B23

would make it a coercer.

In B23 enter:

'24

In C23 enter:

=+B23

In D23 enter:

=ISNUMBER(C23)

should return FALSE, while the translation in E23

=0+B23

would return a result for which IsNumber will be TRUE.
 
Upvote 0
Aladin Akyurek said:
The translation you make from
=+B23
to
=0+B23
would make it a coercer.
Hello Aladin - -

Yes I know that but my point was, given the premise of the question being "why use it and why is it there", that my understanding of the "+" character's genesis and existence in Excel formulas is not rooted in coercion but in compatibility with other programs. It's there because Microsoft was in a battle with Lotus and other programs some dozen years ago for spreadsheet marketshare dominance, and incorporated features like this for compatibility, just as REM and some BASIC statements are still supoorted in VBA. Though the "+" character has a coercive effect in your example, one would typically not employ or be advised to rely on the preceding "+" as a general strategy for coercion before employing +0, *1, or --.

Maybe I misunderstood your point. Mine in a nutshell was that more likely than for ancillary coercive effects in some cases, Microsoft's primary consideration was for Lotus holdovers' familiarity with entering and recognizing the precedent "+" structure.
 
Upvote 0

Forum statistics

Threads
1,223,909
Messages
6,175,312
Members
452,634
Latest member
cpostell

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top