Access. Обновление поля формы
Добавлено: 25 мар 2009, 16:37
Сразу скажу, что в Access я ни бум-бум!
Кое-как, с грехом пополам состряпала маленькую программульку, теперь мне её надо чуток поправить, а у меня не получается
Помогите, плис!! буду ооочень благодарна
Суть в следующем.
У меня есть таблица1, состоящая из 2-х полей: ФИО и сумма
Есть форма с тремя элементами:
- ПолеСоСписком, в которое выводятся значения Таблица1.ФИО,
- второе поле, в которое я ввожу любое число, и
- поле - результат умножения Таблица1.сумма на число, введенное во втором поле
Я написала маленькую процедуру, которая вызывается при изменении в ПолеСоСписком0.
Private Sub func()
Dim rst As DAO.Recordset
Set rst = CurrentDb.OpenRecordset("select * from Таблица1 where fio = '" & ПолеСоСписком0.Text & "'")
Поле4.Value = rst!sum1 * Поле2.Value
End Sub
Вроде всё работает. Я ввожу число во втором поле, выбираю в ПолеСоСписком какую-то запись, в третьем поле всё умножается
Теперь мне нужно сделать так, чтобы и при изменении во втором поле у меня так же пересчитывалось третье.
Я стала вызывать эту процедурку при изменении во втором поле
Private Sub Поле2_Change()
func
End Sub
Но у меня стала выходить ошибка: Run-time error '2185'
невозможно обратиться к свойству или методу элемента управления, пока на этот элемент не установлен фокус ввода
и указатель ошибки встает на строку
Set rst = CurrentDb.OpenRecordset("select * from Таблица1 where fio = '" & ПолеСоСписком0.Text & "'")
Подскажите, плис, в чем ошибка и как её исправить!!
Кое-как, с грехом пополам состряпала маленькую программульку, теперь мне её надо чуток поправить, а у меня не получается
Помогите, плис!! буду ооочень благодарна
Суть в следующем.
У меня есть таблица1, состоящая из 2-х полей: ФИО и сумма
Есть форма с тремя элементами:
- ПолеСоСписком, в которое выводятся значения Таблица1.ФИО,
- второе поле, в которое я ввожу любое число, и
- поле - результат умножения Таблица1.сумма на число, введенное во втором поле
Я написала маленькую процедуру, которая вызывается при изменении в ПолеСоСписком0.
Private Sub func()
Dim rst As DAO.Recordset
Set rst = CurrentDb.OpenRecordset("select * from Таблица1 where fio = '" & ПолеСоСписком0.Text & "'")
Поле4.Value = rst!sum1 * Поле2.Value
End Sub
Вроде всё работает. Я ввожу число во втором поле, выбираю в ПолеСоСписком какую-то запись, в третьем поле всё умножается
Теперь мне нужно сделать так, чтобы и при изменении во втором поле у меня так же пересчитывалось третье.
Я стала вызывать эту процедурку при изменении во втором поле
Private Sub Поле2_Change()
func
End Sub
Но у меня стала выходить ошибка: Run-time error '2185'
невозможно обратиться к свойству или методу элемента управления, пока на этот элемент не установлен фокус ввода
и указатель ошибки встает на строку
Set rst = CurrentDb.OpenRecordset("select * from Таблица1 where fio = '" & ПолеСоСписком0.Text & "'")
Подскажите, плис, в чем ошибка и как её исправить!!