I'll try to explain this better.
When? The subform loads first. It can't get a value from a form that isn't loaded yet.
This might also be an issue, but regardless it still can't find the control: when the form loads and Access prompts for the text box's text since it can't find the control (perhaps because it isn't loaded yet, as you say), if I type in whatever text I want and hit Ok, I then proceed to enter text in the actual textbox and the prompt shows up again with each character I type (requeried from the Changed event).
You don't need to give the focus to a control to get its value (which is the default property for a textbox) so what's significant about a Current event and getting a .Value?
According to pbaldy's response, you must focus on the text box to read its Text property. For the Changed event of the text box, this is no problem since the user is already typing in the text box anyway. However, I have another means of requerying FormB's Record Source through the Current event of a different continuous subform. But when this event fires, the user is focused on that subform and therefore not focused on the text box, so the Text property can't be fetched and I would have to use the Value property instead.
The only two solutions I can think of are toa. Have an entirely separate query that is identical to the first except change "Text" to "Value" in the LIKE clause, and then switch between these queries depending on which event occurs.
b. Store the text box's Text as a global variable, update it in the Changed event, point the LIKE clause to a function that retrieves this variable.
Neither is that great, but I prefer b over a.
Don't get this either. You don't mean navigation form do you?
Yeah, I think I meant Navigation Form. I was unsure how to index this because for each "tab" the form is still called "NavigationSubform", even when they contain different subforms.