Настройка источника управления текстового поля 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))