Thank you for reply, JE McGimpsey.
As you suggested, I put the demo file on my ftp site. It may be found
at
http://hierlaw:@hierlaw.com/demo bug named cols.xls.
Actually, finding the bug in the file should be quite obvious. The file
is designed to demonstrate the bug. There is a single cell under the
'bug' column which contains "#REF", demonstrating that it referred to
the next line. Beside it, under a column called 'tester', there is an
identical formula which does not use 'named ranges' which works
correctly. There is even a cell under the 'works' column to show that
the named range refers to the current row OUTSIDE an 'and' function.
As to your complaint about my terminology. When I use 'label', that is
consistent with the Application's preference setting "use labels in
formulas[sic]". So, if I'm wrong, so is Microsoft.
As to your complaint that I wasn't specific enough, I said that when
using 'named ranges' "[w]hen you use the 'and' function, it refers to
the next row, not the current row." Are you saying that there is a case
where this DOES work or where it is considered correct?
PMJI, but this is not a bug. It is a bug in your understanding of named
ranges and arrays. The formula in A10 is not at all identical to the formula
in B10 as you suggest. The named ranges used in b 10 refer to a range of
thousands of cells. The formula in A10 refers to 2 single cells. The named
range PST refers to E10:E65536. So, in B10, the part of the formula PST<0
resolves to true, while SBNeg resolves to a ref error because of the error
in D11.
I have no idea what you are trying to do or illustrate here or in your
actual sheet, but try changing the sizes of the ranges so you can see how
they resolve in the formula. For example, if PST was defined to refer to
$e$10:$e$15, you can easily see the referenced values by highlighting a PST
in the formula bar and hitting F10.
The reason you think the formula in c10 is correct (it isn't) is because you
can not return an array to a single cell. The name sbNegkj simply returns
the first value of the array (in this case the value of cell D10 to C10.
Prove this by filling down the formula from C10 downwards. You'll see that
the second value of SBNegjk, the ref error appears properly in C11.
You need to rethink what you are doing, and what you are trying to prove
here, and read up on arrays and array formulas. Also whether it is
intentional or not, your formulas refer to offset ranges. SBNeg refers to
D9:d65536, while all the others refer to the beginning row as 10. This may
be intentional, but it is probably not.