Текстовое поле со ссылкой на выпадающий список ничего не возвращает - PullRequest
0 голосов
/ 19 февраля 2019

У меня есть cmbCountry в форме как несвязанный выпадающий список.Раскрывающийся список работает, как и ожидалось.Я установил текстовое поле с именем txtCM_ID в той же форме, в котором я хочу отобразить идентификатор, который был выбран в раскрывающемся списке.

Когда я ввожу источник записи для текстового поля как =Forms![frm_ClientModel]!cmbCountry.Column(0), доступ автоматическиизменяет его на чтение =[Forms]![frm_ClientModel]![cmbCountry].[column](0)

Моя версия возвращает правильную информацию, когда я тестирую ее в окне VBE Immediate.Код, который создает доступ, при запуске в окне Immediate возвращает следующее:

ошибка выполнения 450: неверное число аргументов или неправильное присвоение свойства

разочарованиечто независимо от того, где и как я ввожу код в источник управления, доступ изменяет его версию.Когда форма открыта, txtCM_ID просто остается пустым.

Я также попытался обойти эту проблему, изменив мою ссылку на следующее: Forms("frm_ClientModel").Controls("cmbCountry").column(0)

Хотя эта версия (такжепроверено и хорошо в VBE) не выдает ошибку, оно тоже ничего не возвращает в текстовом поле.

Что я пропускаю / делаю неправильно / пропускаю?

Ответы [ 2 ]

0 голосов
/ 19 февраля 2019

Я не смог конкретно определить, почему это произошло, но в итоге решил проблему, используя событие выпадающего OnClick и записав необходимую информацию в текстовое поле через VBA с помощью этого:

Private Sub cmbCountry_AfterUpdate()
    Me.txt_CMID = Forms("frm_ClientModel").Controls("cmbCountry").Column(0)
End Sub

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

0 голосов
/ 19 февраля 2019

Используйте просто

=[cmbCountry]

Для доступа к значению cmbCountry из другого элемента управления.

...