Это может происходить довольно часто.Простой трюк состоит в том, чтобы гарантировать, что текущая запись формы не является «грязной» или не ожидает обновления.
Таким образом, вы можете перейти:
if me.dirty = True then me.Dirty = False
' now call your update routines etc.
Поскольку эти другие подпрограммы вполне могут обновлятьсяэкран / запись, которую вы просматриваете, затем вы можете выполнить me.Refresh, чтобы убедиться, что отображаются все изменения.
Вышеуказанное заставит запись записи.На самом деле, если я нахожусь в форме и планирую запустить какую-то всплывающую форму или форму на следующем «шаге» для пользователя, я также склонен к принудительному выписыванию текущей формы - это не только безопаснее, но и позволяет избежатьобщее "эта запись была изменена другим пользователем".В большинстве случаев другой пользователь фактически является вашим кодом.
Так что просто сохраните запись с приведенной выше строкой кода - это должно устранить эту проблему в целом.Имейте в виду, что вы можете установить форму для блокировки всей таблицы на вкладке «данные» листа свойств форм, но это вряд ли ваша проблема.