Как назначить значения из набора результатов для полей в форме? - PullRequest
0 голосов
/ 28 августа 2018

У меня есть запрос, который возвращает N Result Set. Я хочу использовать этот запрос для назначения значений для поля в форме OnCurrent. Прямо сейчас моя ошибка говорит, что это Cannot perform this operation. Run-Time Error 3032

Так что, если у меня есть, скажем, 5 записей возвращаются в моем запросе, и я хочу пойти один за другим и назначить столбец в моей форме (представление таблицы) со значением.

Мой метод выглядит так:

Private Sub ConfigureScore()
  Dim resultSet As DAO.RecordSet
  Set resultSet = CurrentDb.OpenRecordset("MyQuery")
  If Not (resultSet.EOF And resultSet.BOF) Then
   resultSet.MoveFirst
   Do Until resultSet.EOF = True
   Me.Field.Value = resultSet![Name]
   resultSet.Update
   resultSet.MoveNext
 Loop
 End If
 resultSet.Close
 Set resultSet = Nothing
End Sub

Итак, в моем MyQuery возвращаемое значение равно Name, оно выглядит как SELECT Name FROM.... Запрос возвращает только один столбец, и я хочу взять эти значения и заполнить столбец Field моей формы.

1 Ответ

0 голосов
/ 29 августа 2018

Нельзя создать несколько строк в несвязанной форме.

Чтобы заполнить «строки» в форме, нужно задать RecordSource формы для таблицы или запроса («связать форму») и «связать» элементы управления, такие как текстовые поля в разделе сведений Форма для полей этого запроса устанавливает для их свойства ControlSource имя поля этого запроса. Для этого не требуется VBA.

В вашем сценарии форма должна быть связана с MyQuery, а раздел сведений должен содержать текстовое поле, связанное с полем Name.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...