Data validation behaviour

J

Jack Schitt

Local named ranges:

Codes!Depth_Range

refers to: = Codes!$A$10

evaluates to: 46 (always a positive integer)

Codes!Short_Name_Header

refers to: = Codes!$Z$12

Codes!Sign_Table

refers to: =OFFSET(Codes!Short_Name_Header,1,0,Codes!Depth_Range,3)

Codes!Table

refers to: =OFFSET(Codes!Short_Name_Header,1,0,Codes!Depth_Range,9)



Workbook-level named ranges:

Global_Sign_Table

refers to: =Codes!Sign_Table

Global_Table

refers to: =Codes!Table



In worksheet "Analysis", data validation on a cell is set to Custom formula:



=$V16*VLOOKUP($P16,Global_Sign_Table,3)>=0



This behaves as expected.



However if I change the data validation to:



=$V16*VLOOKUP($P16,Global_Table,3)>=0



It does not behave as expected (should behave identically to
Global_Sign_Table)

I cannot understand why it should behave any differently.

The three left-most columns in Global_Table are identical to those in
Global_Sign_Table.



Any ideas?



The 3rd column in Global_Table, Global_Sign_Table, Codes!Table, and
Codes!Sign_Table, all being the same range of cells, contains a list of
integers -1, 0, or 1.



The intention is to test whether a numeric entry in worksheet "Analysis" has
the expected sign. If I refer to Global_Sign_Table it correctly rejects
numbers with an unexpected sign. If I refer to Global_Table, it accepts all
numbers regardless of sign.
 
Top