ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   If statement with "OR" (https://www.excelbanter.com/excel-programming/446899-if-statement.html)

Laurence Lombard

If statement with "OR"
 
Is there a shorthand way of working "OR" into an if statement in a
similar as used in the CASE statement

if Person = "Peter", "Paul", "John" then...

along the lines of
Select Case Person
Case "Peter","Paul","John"...

if Person = "Peter" or Person = "Paul" or Person = "John" then...
is a bit bulky

joeu2004[_2_]

If statement with "OR"
 
"Laurence Lombard" wrote:
Is there a shorthand way of working "OR" into an
if statement in a similar as used in the CASE statement
if Person = "Peter", "Paul", "John" then...
along the lines of
Select Case Person
Case "Peter","Paul","John"...


Not that I know of. In fact, Select Case __is__ the "shorthand" that I use
for that purpose.

Even if there were a "shorthand" form for an If statement, it probably would
be implemented inefficiently.

In VBA, the If conditional expression is fully evaluated. It is not
evaluated left-to-right only as far as necessary, as is the case in some
other computer languages. So:

If Person = "Peter" Or Person = "Paul" Or Person = "John" Then

performs 3 comparisons and ORs the results before determining whether or not
to execute the Then part.

In contrast:

Select Person
Case "Peter", "Paul", "John"

tests each case in order, and it stops the comparisons and goes to the
appropriate case as soon as a true condition is encountered.



All times are GMT +1. The time now is 08:55 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com