2015-11-05 4 views
-1

Я использую форму для получения лицензий, в которой вам нужно указать количество контрактов, дату контракта, владельца лицензии, дату начала и дату начала лицензии. Но некоторые из контрактов имеют на нем 50 лицензий. Мой вопрос: как я могу сделать это так, чтобы, когда я ввожу номер контракта, который уже находится в базе данных, все поля, о которых я упоминал ранее, будут автоматически заполняться, чтобы сделать ввод данных быстрее?Автозаполнение формы из базы данных доступа

ответ

2

В событии AfterUpdate номера контракта запустите запрос к вашему набору данных.

Dim db as Database 
Dim rec as Recordset 

Set db = CurrentDB 
Set rec = db.OpenRecordset("SELECT * FROM MyTable WHERE ContractNumber = '" & Me.txtContractNumber & "'") 

If rec.EOF Then 
Else 
    Me.LicenseOwner = Rec("LicenseOwner") 
    Me.LicenseDate = rec("LicenseDate") 
    Etc... 
End If 

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

Смежные вопросы