ник: bel
Помогите пожалуйста, мне нужно чтобы в форме при выборе ФИО из списка (поле со списком ФИО), формировался другой список (поле со списком "Номер") и после выбора из списка в поле "Номер" появлялось число в поле "КолЧас".
На данный момент у меня при выборе ФИО появляется в поле "Номер" число, которое действительно подходит, но если раскрыть этот список номеров, то видно, что это общий список, а мне нужно, чтобы в списке были номера, относящиеся только к выбранной фамилии. Вот процедура:
Private Sub ФИО_AfterUpdate()
Dim rst As Recordset
On Error GoTo 999
Set rst = CurrentDb.OpenRecordset("SELECT * FROM [ИнформЗап] WHERE [ФИО]='" & Me.ФИО & "'")
If rst.RecordCount > 0 Then
'Связь формы с запросом
Me.[Номер] = rst.Fields("Номер").Value
Me.[КолЧас] = rst.Fields("КолЧас").Value
End If
rst.Close: Set rst = Nothing
Exit Sub
999:
MsgBox Err.Description
Err.Clear
End Sub
' Определяем максимальный номер документа
Private Sub Form_Cur()
If Me.NewRecord = True Then
Me.[НомерO] = 1 + funGetMaxNumber("SELECT Max([НомерO) as NN FROM [Отработка/переработка]")
End If
End Sub
' Получаем максимальное число
Function funGetMaxNumber(sSQL As String) As Long
Dim dbs As Database, rst As Recordset
funGetMaxNumber = 0
On Error GoTo 999
Set dbs = CurrentDb
Set rst = dbs.OpenRecordset(sSQL)
If rst.RecordCount <> 0 Then
funGetMaxNumber = rst![NN]
End If
rst.Close
Exit Function
999:
Err.Clear
End Function