View Single Post
  #6   Report Post  
Bernie Deitrick
 
Posts: n/a
Default

Jack,

You would need to use the worksheet change event - VBA code, so you would
need to be able to have code, and have macros enabled (some folks don't like
that.)

Besides, it really doesn't add to the processing overhead. Excel only calc's
the cells that are directly affected by a change. You could have 1000
cells, and change 1 of those, and only the corresponding cell in column B
will be calc'd. Using VBA will actually slow your file down more.

HTH,
Bernie
MS Excel MVP


"Jack Sheet" wrote in message
...
Just one minor problem:
As the formula in B1 refers to the address of the cell to which the data
validation applies, it seems that I am going to have to copy this formula
down to each row in column B for which a corresponding entry is to be made
in column A. I would have preferred as solution that just requires the
formula to be stored once, simply to reduce the processing overhead on the
workbook. I can live with it as it stands, but is there a way around

that?


"Bernie Deitrick" <deitbe @ consumer dot org wrote in message
...
Actually, I forgot about the positive integral part.

Change the Data validation formula to

=B1

and in B1, enter the formula



=OR(A1="BR",A1="NT",AND(NOT(ISERROR(FIND(RIGHT(A1, 1),"LPTVY"))),IF(NOT(ISERR


OR(VALUE(LEFT(A1,LEN(A1)-1)))),AND(VALUE(LEFT(A1,LEN(A1)-1))0,INT(VALUE(LEF


T(A1,LEN(A1)-1)))=VALUE(LEFT(A1,LEN(A1)-1))),FALSE)),AND(NOT(ISERROR(FIND(LE


FT(A1,1),"KD"))),IF(NOT(ISERROR(VALUE(RIGHT(A1,LEN (A1)-1)))),AND(VALUE(RIGHT


(A1,LEN(A1)-1))0,INT(VALUE(RIGHT(A1,LEN(A1)-1)))=VALUE(RIGHT(A1,LEN(A1)-1))
),FALSE)))

You need to use cell B1 because the formula is longer than the data
validation formula length limit.

HTH,
Bernie
MS Excel MVP


"Jack Sheet" wrote in message
...
Hi all

I want to set data validation on a cell so that it will accept the

following
(and only the following) text strings:
(1) "BR" (literally)
or
(2) "NT" (literally)
or
(3) "nA" where n is any positive integral numerical value including

zero
and
A may take any of the values "L", "P", "T", "V" or "Y"
or
(4) "An" where n is any positive integral numerical value including

zero
and
A may take either of the values "K" or "D".

Is this possible, please, and if so how? thanks

--
Return email address is not as DEEP as it appears