OK, let's back up again, because I see it appears you still aren't quite clear how this code all works. Since it all builds on itself, if you do not understand the base layer, building on top of that is only going to make things more confusing. It is important to understand how the code works before building on top of it.
So, there is a problem with the logic of this block of code that your wrote:
Code:
Select Case Me![Frame103]
Case 1
Me![Text101] = "Y"
Me.Frame112.Locked = False
Me![Text111] = "Y"
Me![Text111] = "N"
Me![Text111] = "<acronym style="border-width: 0px 0px 1px; border-bottom-color: rgb(0, 0, 0); border-bottom-style: dotted; cursor: help;" title="To be discussed">TBD</acronym>"
What this says, is if that the first option is selected in Frame103, then set the following fields equal to the values that you specify. Hence, each item you have listed under there should only be listed once. If option 1 is selected for Frame103, what do you want to set Text111 to? It will only be one of "Y", "N", or "TBD", not all three. So you only should have one of those lines listed there, not all three.
It might make more sense if I use we look at a similar no-technical example of this structure. Maybe something like this:
Code:
Select Case "We are having a baby"
Case "The baby is a boy"
Set BabyName = "Karl"
Set BabyName = "Bob"
Set BabyName = "Mark"
That doesn't make much sense. You are only going to give the baby one name, not all three. So you only want to list the BabyName that you want.
If you did use this structure it would do something -- the last setting wins. So the BabyName would be "Mark". Hence the other two lines are unnecessary and don't really do anything. Hence they should not be there.
So, back to your code, under each "Case" block, no field/property combination should be listed more than once.
Does that help clarify things?
So, how would you rewrite that block of code you have?