HI
I not sure this will solve your problem, but it is worth trying at least.
I am not sure of the code involved, I am new to code so I still rely on macros.
Create a new macro and in the conditions field (if you do not see a conditions field go to: Tools > Options > View tab - look for Show Macro design and make sure that there is a check in the conditions box, then exit the macro without saving and start over).
In your macro condition field, without using the IIF, write the true statement (ex: [text box] = yes) then in the action field pick: SetValue, in the bottom of that field it will give you two fields: in the item field put the name of the field that you want the value put into, in the Expression field put the name of field that you want the value to be taken from. To see the code, save and close the macro, click on it once to highlight and right click, choose Save as and click on the arrow, and pick Module. That will save the macro as a module that you can then copy, paste into the code area, just say no when it asks if you want error coding added.
That may not work for what I think you are asking, but like I said, it is worth at least trying. You may run into a problem if you are using a query to supply the data. Even though the data in a query exists for you to use on a form or report, the individual data does not actually exist in the database as unique data, with places of their own. You may want to consider using a temporary table to put the results of your query into. Using an append query, the table would only have two columns, one with your data, the other a checkbox, then use that table to attach to your form. Then one checkbox being checked and inputed into the table and queried, should get you the one field you want.
I hope that makes sense, it is hard to explain, but I have used temp tables in my own database, and they can be valuable, if you are in a bind and nothing else seems to work. You just have to remember to put a command in that before you append the table you first run a delete query, which will only delete the data from the table so that you can use it again.
I hope this has been helpful, if not write again with more details and I will try to help.
DAK