Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Два поля со списком.
 
 автор: mulrus   (12.10.2007 в 12:00)   личное сообщение
 
 

Здравствуйте.

У меня есть такая вещь.

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

  Ответить  
 
 автор: alecks_lp   (12.10.2007 в 13:24)   личное сообщение
 
 

1. В источнике записей cbo1 присоединенный столбец должен быть ключевым полем tbl1
2. В источник записей cbo2 включите отбор записей по cbo1. (Не брезгуйте мастером запросов.)
3. На cbo1_AfterUpdate вешайте cbo2.Requery
4. Наслаждайтесь!

  Ответить  
 
 автор: osmor   (12.10.2007 в 13:35)   личное сообщение
 
 

Демонтрация сказанного выше
http://hiprog.com/index.php?option=com_content&task=view&id=693

  Ответить  
 
 автор: bel   (26.10.2007 в 10:01)   личное сообщение
 
 

ну похоже, но не совсем.... у меня поле сос писком ФИО. При выборе в этом поле ФИО должен формировться список в поле со списком Номер из номеров, относящихся к выбранной фамилии, а при выборе из списка в поле со список Номер номера (потому что к одной фамилии может относиться несколько номеров) в поле должно появляться число.
Кстати, я посмотрела эту БД и попробовала, у меня почему-то не получается установить 2 ключевых поля

  Ответить  
 
 автор: osmor   (26.10.2007 в 10:35)   личное сообщение
 
 

ну так кажется как раз то что надо.
только в примере списки, а у Вас ПолеСоСписком (ПСС)
а суть такая же
при выборе в первом ПСС фамилии во втором ПСС отобращаются только те номера которые соответвуют этой фамилии.
А когда в ПСС с номерами будет выбрано число, то оно и будет значением этого ПСС


msgbox me!Номера

или я чего-то не понимаю?

  Ответить  
 
 автор: bel   (26.10.2007 в 10:46)   личное сообщение
 
 

Я вобще-то изначально вот так делала, но тут только один номер выбирается... списка из номеров не получается
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
Me.Номер.RowSource = "Select Номер From [Сотрудники] Where IDФИО=" & Forms![Отработка/переработка]!IdФИО

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

  Ответить  
 
 автор: osmor   (26.10.2007 в 11:36)   личное сообщение
 
 

что-то ничего не понимаю в таблице Сотрудники чтонесколько записей для одного сотрудника?
логику действий по коду не понял...
объясните чем не подходит пример из ссылки выше?
При выборе в этом поле ФИО должен формировться список в поле со списком Номер из номеров, относящихся к выбранной фамилии
это подходит
при выборе из списка в поле со список Номер номера (потому что к одной фамилии может относиться несколько номеров) в поле должно появляться число.
считайте значение поля со списком Номер

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList