#1   Report Post  
Posted to microsoft.public.excel.worksheet.functions
Mike McLellan
 
Posts: n/a
Default AND Function

Does the AND function always evaluate all arguments or only until it comes
across the first one that evaluates as FALSE? If the former is the case, is
there any way to make it work the second way without using a n ested IF
statement?
  #2   Report Post  
Posted to microsoft.public.excel.worksheet.functions
Bob Phillips
 
Posts: n/a
Default AND Function

I don't understand, what difference does it make? As long as a False
condition evaluates to False, isn't that OK? It would make a difference with
OR, but not AND.

--
HTH

Bob Phillips

(remove xxx from email address if mailing direct)

"Mike McLellan" wrote in message
...
Does the AND function always evaluate all arguments or only until it comes
across the first one that evaluates as FALSE? If the former is the case,

is
there any way to make it work the second way without using a n ested IF
statement?



  #3   Report Post  
Posted to microsoft.public.excel.worksheet.functions
Mike McLellan
 
Posts: n/a
Default AND Function

The expression that I want to evaluate is along the following lines:

=IF(AND(FileExists(name),FileSize(name)25000)

If the file doesn't exist, then the second argument will fail.

I think the best answer is probably to force the FileSize function to return
0 if the file doesn't exist

Thanks for your help

"Bob Phillips" wrote:

I don't understand, what difference does it make? As long as a False
condition evaluates to False, isn't that OK? It would make a difference with
OR, but not AND.

--
HTH

Bob Phillips

(remove xxx from email address if mailing direct)

"Mike McLellan" wrote in message
...
Does the AND function always evaluate all arguments or only until it comes
across the first one that evaluates as FALSE? If the former is the case,

is
there any way to make it work the second way without using a n ested IF
statement?




  #4   Report Post  
Posted to microsoft.public.excel.worksheet.functions
Bob Phillips
 
Posts: n/a
Default AND Function

I assume that FielExists and Filesize are two UDFs? In that case, your
question is nothing to do with the evaluation of the conditions, but with
the UDFs, at least that is how I see it.

The AND will always evaluate both conditions, even if the first fails,
unnecessary but that is the way that it is, so your second UDF would need to
also check if the file exists, or maybe ditch FileExists and do it all in
Filesize, and return -1 if it doesn't exist.

--
HTH

Bob Phillips

(remove xxx from email address if mailing direct)

"Mike McLellan" wrote in message
...
The expression that I want to evaluate is along the following lines:

=IF(AND(FileExists(name),FileSize(name)25000)

If the file doesn't exist, then the second argument will fail.

I think the best answer is probably to force the FileSize function to

return
0 if the file doesn't exist

Thanks for your help

"Bob Phillips" wrote:

I don't understand, what difference does it make? As long as a False
condition evaluates to False, isn't that OK? It would make a difference

with
OR, but not AND.

--
HTH

Bob Phillips

(remove xxx from email address if mailing direct)

"Mike McLellan" wrote in

message
...
Does the AND function always evaluate all arguments or only until it

comes
across the first one that evaluates as FALSE? If the former is the

case,
is
there any way to make it work the second way without using a n ested

IF
statement?






  #5   Report Post  
Posted to microsoft.public.excel.worksheet.functions
 
Posts: n/a
Default AND Function

"Bob Phillips" wrote:
I don't understand, what difference does it make?


Consider the following example:

=if(and(a1<0, b1/a10), "foo", "bar")

This results in #DIV/0 when A1 is zero, despite clear intentions
to avoid it. That formula must be rewritten, for example:

=if(a1=0, "bar", if(b1/a10, "foo", "bar"))

It would make a difference with OR, but not AND.


It makes no more nor less difference with OR than with AND.
I could write a similar example above using OR(a1=0,b1/a1<=0).

With some programming languages, many people rely on the
abortive left-to-right evaluation of boolean expressions, which
have operators for "and", "or", etc. It is most useful (albeit
dubious) when the evaluation of subexpressions has side-effects.

But in those languages, all function parameters are evaluated
before calling the function. So it is the case with Excel's functions
AND(), OR(), etc. These are (obviously) functions, not operators.

Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Creating a Custom Excel Function to Calculate Gini Coefficients [email protected] Excel Worksheet Functions 3 February 21st 06 10:15 PM
Date & Time mully New Users to Excel 4 May 23rd 05 11:56 AM
Hyperlinks using R[1]C[1] and offset function in its cell referenc Elijah-Dadda Excel Worksheet Functions 0 March 5th 05 03:31 AM
Conversion SVC Excel Worksheet Functions 9 February 28th 05 02:29 PM
HOW CAN I GET OFFICE 2003 EXCEL BASIC TO NEST FUNCTIONS LIKE EXCE. Robert AS Excel Worksheet Functions 4 December 2nd 04 10:49 AM


All times are GMT +1. The time now is 01:40 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"