Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > MS Access > Связываение комбобоксов


Автор: rattick 18.1.2009, 00:19
Начал осваивать access и такой вопрос. на форме есть 3 элемента полесосписком выбрав в первом фамилию, во втором должно выбираться имя (если людей с такой фамилией несколько), а в третьем отчество с учетом позиций выбранных в первых двух полях.
накидал такое в VBA, после выбора фамилии при попытке выбрать имя выскакивает inputbox как при запросе. помогите, плиз, с этим?

Код

Private Sub Form_Load()
Me.RecordSource = "SELECT*FROM Список"
ПолеСоСписком0.RowSource = "select Список.Фамилия from Список"
ПолеСоСписком2.RowSource = "select Список.Имя from Список"
ПолеСоСписком4.RowSource = "select Список.Отчество from Список"
End Sub

Private Sub ПолеСоСписком0_AfterUpdate()
ПолеСоСписком2.RowSource = "SELECT [Список].[Имя] from [Список] where [Список].[Имя] = " & ПолеСоСписком6
End Sub

Автор: FINANSIST 18.1.2009, 13:59

см. вложение

Автор: bopoha 18.1.2009, 14:07
rattick, во время выполнение нужно посмотореть какой запрос в результате получился. Его можно добавить в конструктор запросов, он подскажет ошибку. Подобное поведение говорит о том, что движок не нашел название поля в таблиуе и посчитал это параметром. Я думаю что ПолеСоСписком6 (почему 6, а не 0) возвращает строку в качестве значения, а ее в запросе необходимо обрамить ковычками.

Код

Private Sub ПолеСоСписком0_AfterUpdate()
    ПолеСоСписком2.RowSource = "SELECT [Список].[Имя] from [Список] where [Список].[Имя] = '" & ПолеСоСписком6 & "'"
End Sub



И переименуйте элементы управления, а то запутаетесь.

Автор: rattick 18.1.2009, 18:36
FINANSIST,  Огромное тебе спасибо!!! Пойду почитаю, что такое HAVING

Автор: FINANSIST 18.1.2009, 18:42
Цитата(rattick @  18.1.2009,  18:36 Найти цитируемый пост)
Пойду почитаю, что такое HAVING

синоним where в групповых операциях
ps код в vba тоже отличается от того, который был у тебя

Автор: rattick 21.1.2009, 23:40
Так с комбобоксами разобрался, но теперь такая проблема: хотелось бы что бы при выборе в трех комбобоксах имя, фамилию и отчество дополнительная инфа об этом человеке должна отобразится в поле на форме. Пытался сделать с помощью vba через control source - не получилось. ПОМОГИТЕ!!!! ПЛИИИИЗЗЗЗ

Автор: FINANSIST 21.1.2009, 23:46
Цитата(rattick @  21.1.2009,  23:40 Найти цитируемый пост)
хотелось бы что бы при выборе в трех комбобоксах имя, фамилию и отчество дополнительная инфа об этом человеке должна отобразится в поле на форме. Пытался сделать с помощью vba через control source - не получилось. ПОМОГИТЕ!!!! ПЛИИИИЗЗЗЗ

Делается абсолютно тем же макаром, если действительно
Цитата(rattick @  21.1.2009,  23:40 Найти цитируемый пост)
 с комбобоксами разобрался

то
Цитата(rattick @  21.1.2009,  23:40 Найти цитируемый пост)
но теперь такая проблема

такая проблема не должна возникнуть

Автор: Masja 15.2.2009, 15:51
Файл ни качается... а мне б так был полезен... smile 
можно пожалуйста перезалить?

Автор: FINANSIST 15.2.2009, 17:43
Цитата(Masja @  15.2.2009,  15:51 Найти цитируемый пост)
Файл ни качается... а мне б так был полезен...  можно пожалуйста перезалить?

странно, у меня качается
Лови вложение ещё раз

Автор: Masja 16.2.2009, 17:01
пасиб. скачала
глюк какой-то. через раз качается то как страница хтмл, то как архив.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)