Настройка источника управления текстового поля VBA

В моей форме Access 2007 я ранее успешно устанавливал controlSource текстового поля, прямо в окне свойств, используя этот код

=UCase(Left([txtLName],6) & "_" & Left([TxtFName],1))

Однако, пытаясь жестко запрограммировать это в форму, я пытаюсь использовать VBA для установки свойства controlSource с помощью этого кода:

Me.txtCodePersonal.ControlSource = "=UCase(Left([txtLName],6) & "_" & Left([TxtFName],1))"

В моей отладке это решает мою проблему "_" раздел этой линии.

Я не знаю, как свойство controlSource работает в VBA, поэтому я не знаю, как это исправить. Заранее благодарю за вашу помощь.

1 ответ

Решение

Вы пытаетесь присвоить строковое значение .ControlSource имущество. Однако эта строка включает в себя кавычки. Точно так же в окне Immediate это выдаст ошибку:

Debug.Print "=UCase(Left([txtLName],6) & "_" & Left([TxtFName],1))"

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

Debug.Print "=UCase(Left([txtLName],6) & ""_"" & Left([TxtFName],1))"
=UCase(Left([txtLName],6) & "_" & Left([TxtFName],1))
Другие вопросы по тегам