Вы не упомянули txtIDNumber
в коде - вы упомянули lblIDNumber
. Я полагаю, вы имеете в виду, что эти двое должны быть одинаковыми. Другими словами, код, который у вас есть на данный момент, должен выглядеть примерно так:
.RecordSource = "select * from tblpersonal where empid like '" & Me.txtIDNumber.Text & "*'"
Таким образом, вы используете значение текстового поля в форме для заполнения SQL-запроса. Я прав до сих пор?
И вы спрашиваете, что если я сохраню идентификационный номер в переменной, а не в текстовом поле? Я согласен, это, вероятно, шаг в правильном направлении.
Таким образом, вы можете создать переменную в разделе «Общие объявления» формы, используя:
Dim idNumber As Integer
Идея состоит в том, чтобы обновлять значение этой переменной каждый раз, когда изменяется текстовое поле. Примечание: я предполагаю, что «идентификационный номер» является целым числом - если нет, вы должны использовать вместо него строку.
Теперь вам нужно обновить эту переменную при изменении текстового поля. В событии txtIDNumber_Change
вы захотите добавить код для преобразования строки txtIDNumber.Text
в целое число и сохранить ее в idNumber
. Я забыл точный синтаксис, но я предполагаю что-то вроде:
idNumber = Int(txtIDNumber.Text)
Наконец, теперь вы можете использовать переменную idNumber
в запросе SQL вместо текстового поля:
.RecordSource = "select * from tblpersonal where empid like '" & idNumber & "*'"