tags:

views:

854

answers:

3

Hi there.

I have a relatively simple Continuous Form. There is an invisible Check Box, let's call it Frank.

There is second Check Box (Ralph) which may be True or False. There's also a text box with a date (RalphDate).

If Frank is True, I don't want the user to be able to change Ralph or RalphDate, regardless of what is already there.

Now, RalphDate is easy in that I just use a Conditional Format to check the value of Frank which either enables or disables RalphDate. This option is not available for a Check Box.

I'm now stuck, because using some Visual Basic sets the state of all the Ralph boxes the same based on the value of the first Frank value it comes across. The question therefore, is how do I disable only the associated Ralph Check Box based on the Frank Check Box being True?

A: 

Short answer is you can't do that if you are using continuous forms. Changing the setting of a control changes it for all rows.

DJ
+3  A: 
Renaud Bompuis
Solution 2 is really quite clever! Solution 1 didn't give me what I was after. It took me a bit to work through the logic of Solution 2 and I'm very glad I did. Now that I've got it I suspect I'll find a couple more uses for this 'trick'. Thanks!
Humpton
+1  A: 

This is one of the drawbacks of continuous forms, and there's no way around it.

In general, I avoid editable continuous forms -- I use them only to display a list, and use an editable subform linked to the continuous form's PK to display the current data for editing.

This avoids all the problems with conditional display of particular controls, since you just display the data in the continuous form and can control exactly what is visible/enabled in the single detail subform.

--
David W. Fenton
David Fenton Associates

David-W-Fenton