This behavior usually occurs when Access can't find the subfield name in the dataset behind the subform (due to a typo perhaps?) The fields don't have to be displayed, but they must be in the subform's datasource.

Otherwise, try to get rid of any VB code that messes with the link data items. Access gets very confused when that happens.