Создать имя поля из набора записей - PullRequest
0 голосов
/ 14 января 2010

У меня есть форма, которая отображает информацию о проекте, который имеет 10 флажков. Флажки называются "chkAudience1", "chkAudience2" и т. Д. Через "chkAudience10". Любая комбинация ящиков может быть отмечена от одного до всех, и все, что между ними.

Тогда у меня есть таблица, которая связывает флажки с проектом. Эта таблица содержит поле с именем ProjectID и поле с именем AudienceID (оба поля определены как число). Это позволяет мне выбрать все записи аудитории для проекта.

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

sqlStmt = "SELECT * FROM ProjectAudience WHERE ProjectID = " & Me.ProjectID.Value
Set rs = cn.Execute(sqlStmt)
While Not rs.EOF
    'Me.chkAudience1.Value = -1
    x = "Me.chkAudience" & rs(1).Value
    x.Value = -1
    rs.MoveNext
Wend

x будет установлен в «Me.checkAudience1», но следующая строка выдает ошибку «Требуется объект». Как создать имя поля на основе данных набора записей, а затем использовать это имя поля для установки значения. (Это делается в Microsoft Access 2003)

1 Ответ

1 голос
/ 14 января 2010

Правильный цикл while:

Пока не rs.EOF
'Me.chkAudience1.Value = -1
Me.Controls ("chkAudience" & (rs (1) .Value)). Значение = -1
rs.MoveNext
Венд

Ключ Me.Controls ().

...