Are you setting the ControlSource of your Control to point to the variable? What do you mean by "changing the source of a variable"?
The variable was initially getting its value from one field in the record set I was opening during runtime. I have changed that and now the variable receives value from two concatenated record set fields ( txtMyVar = rs![field1] & " " & rs![field2]).
I've found out what was causing this.
On my form I have a field which data source I've changed (from db field) to be an expression, and then I code I tried to change the value of that control.