MS Access заполнить поле со списком в форме на основе другого поля со списком в другой форме - PullRequest
0 голосов
/ 06 декабря 2018

Я пытаюсь заполнить поле со списком в форме, основанной на выборе еще 3 полей со списком в другой форме.Мне удалось решить это с одной проблемой.

Код, который я использую:

Private Sub Command715_Click()
DoCmd.OpenForm "SCPrices"

Forms!SCPrices![QuoteRef] = Me![Quote Ref]
Forms!SCPrices![Combo285] = Me![Scope 1] & Me![Scope 2] & Me![Scope 3]
End Sub

Работает нормально, однако приносит значение 3 других комбинированных полей как 1, например: Scope 1 выбран в качестве CCTV, Scope2 выбрано как CAD, Scope 3 выбрано как Survey.

и я получаю значение Combo285 как «CCTVCADSurvey» вместо индивидуального выбора.

Что я должен использовать вместо & подписать код дляполучить желаемый результат?Спасибо за любую помощь

1 Ответ

0 голосов
/ 13 декабря 2018

В MS Access '&' просто объединяет значения.Если вы хотите создать список значений для заполнения поля со списком, то значения должны быть объединены, но также разделены символом «;».Вам может понадобиться обернуть ваши значения в Cstr (), если они как-то не являются строками.

Однако вы не можете просто установить комбинированный список как строку, Access не преобразует это в действительный источник строк, вы простополучить одно значение, состоящее из заданной вами строки.

Чтобы установить источник строк, вы должны указать само свойство источника строк.Нечто подобное должно работать, хотя лично я передаю значения через OpenArgs для использования в открываемой форме (обычно потому, что я делаю со значениями гораздо больше, чем просто устанавливаю свойство).

Но этот подход тоже работает:

Forms!SCPrices![Combo285].RowSource = Me![Scope 1] & ";" & Me![Scope 2] & ";" & Me![Scope 3]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...