Как открыть вторую форму на основе информации из первой формы? - PullRequest
0 голосов
/ 09 августа 2011

Может ли кто-нибудь помочь мне с приведенным ниже синтаксисом IF?

Вот что нам нужно сделать:

  1. Добавить новую запись на Form1;
  2. Нажмите кнопку Form1, чтобы открыть Form2;
  3. Когда открывается Form2, он содержит информацию от Form1.

Итак, я добавляю это к Properties/OnDirty/CodeBuilder:

If me.Dirty = True then 
  Me.Dirty = false
Docmd.OpenForm "Form2",,,"EvalID = " & me!Eval_ID 

Как только я ввожу данные, строка Docmd создает

ошибка времени выполнения 3075, синтаксическая ошибка (отсутствует оператор) ... EvalID

В Form1 ключ Eval_ID, а в Form2 у меня EvalID (но не ключ).

Есть предложения?

1 Ответ

1 голос
/ 10 августа 2011

Мне кажется, что здесь происходит несколько вещей. Это также поможет подтвердить некоторую информацию:

  1. Это относится к форме MS Access или к какой-либо другой форме, управляемой VBA?
  2. Обе ли формы связаны с таблицами или редактируемыми запросами?

Скорее всего, это проблема, вызывающая синтаксическую ошибку. Это должно быть достаточно просто, чтобы решить это. Поместите точку останова в коде в этом месте. В этот момент скопируйте полученную строку (например, EvalID = 7) после слова «ГДЕ» в представлении SQL нового запроса на основе двух таблиц. Предварительный просмотр запроса для устранения причины проблемы с этим выражением.

...