Проблема OpenArgs в доступе - PullRequest
1 голос
/ 17 мая 2010

У меня есть такой код:

Dim strResponses As String
strResponses = Forms!frmResponses.QstnID.OpenArgs
If Len(strResponses) > 0 Then
     Me![QstnID].DefaultValue = Me.OpenArgs
  End If

Когда я запускаю его, выдает ошибку 438. Может ли кто-нибудь помочь мне узнать, где находится ошибка?

Ответы [ 3 ]

1 голос
/ 17 мая 2010

Конечно, это должно быть:

 strResponses = Forms!frmResponses.OpenArgs

Или

 strResponses = Me.OpenArgs

Только формы и в более поздних версиях, отчетах, имеют свойство OpenArgs, следовательно, я полагаю, ошибка «Объект не поддерживает это свойство или метод».

0 голосов
/ 17 мая 2010

, чтобы узнать, в какой строке находится ваша ошибка, вы можете сделать следующее

  1. создать лабораторию myError
  2. добавить предложение об ошибке goto myError
  3. нумерация строк кода
  4. используйте значение 'erl' для отображения номера строки с ошибкой

Вы также можете использовать надстройку MZ-Tools для VBA, которая может сделать это за вас несколькими щелчками мыши после правильной настройки параметров. Вы также можете проверить этот более полный ответ: ms-access-vba-and-error-processing

0 голосов
/ 17 мая 2010

Ошибка 438 происходит в строке:

Me![QstnID].DefaultValue = Me.OpenArgs

Что произойдет, если в качестве теста вы попытаетесь установить Me![QstnID].DefaultValue на что-то другое?например,

Me![QstnID].DefaultValue=42

Итак, проблема определенно связана с OpenArgs?

...