|
|
|
| Как то Вы показали мне вот это...
Private Sub Умер_AfterUpdate()
If Me!Умер = True Then
Me![Дата смерти].Locked = False
Me![Дата смерти].BackColor = 16777215
Else
Me![Дата смерти] = ""
Me![Дата смерти].Locked = True
Me![Дата смерти].BackColor = -2147483633
End If
End Sub
В данном случае используется флажок...
Теперь я хочу сделать тоже самое для двух полей со списками, т е при выборе в поле "случаи обращения" - "травмы" поле со списком "Вид травмы" становилось бы активным и наоборот...
Делаю вот так...
Private Sub ПолеСоСписком107_AfterUpdate()
If Me![Случаи обращения] = "Травмы" Then
Me![Вид травмы].Locked = False
Me![Вид травмы].BackColor = 16777215
Else
Me![Вид травмы] = ""
Me![Вид травмы].Locked = True
Me![Вид травмы].BackColor = -2147483633
End If
End Sub
А он ругается и указывает на...
Me![Вид травмы].Locked = True
Что я делаю не так??? | |
|
| |
|
|
|
| в какое поле переходит курсор после выхода их поля [Случаи обращения] ? | |
|
| |
|
|
|
| Если [Случаи обращения] = "Травмы", то переходим в поле со списком [Вид травмы], если другое, то перескакиваем через поле со списком [Вид травмы] в поле[Время принятия] | |
|
| |
|
|
|
| я намекаю, что у вас после обновления [Случаи обращения] курсор стоит в поле [Вид травмы] и сделать его looked не получится.
Скажите какое сообщение об ошибке вылезает | |
|
| |
|
40 Кб. |
|
| При выборе значения в поле [Случаи обращения] вылезает такая ошибка (прикрепил в файл)... | |
|
| |
|
39 Кб. |
|
| Только сейчас до компа добрался......
А в каком виде(формате) хранится инфа в таблице в поле [случай обращения] - вполне вероятно что в числовом......
тогда нужно сравнивать не со словом "травмы" а с его числовым аналогом....
и еще меня не много смущает ПолеСоСписком107 это что за элемент.......
раньше я часто покупался на следующий прикол....
прописывал в VBA не имя поля а данные поля а получалось потому что в режиме конструктора формы смотрел не в то место (т.е прописывал то что написано в красном квадрате (см.рис) а нужно было то что в синем возможно что
Private Sub ПолеСоСписком107_AfterUpdate()
If Me![Случаи обращения] = "Травмы" The
а должно быть
Private Sub ПолеСоСписком107_AfterUpdate()
If Me![ПолеСоСписком107] = "Травмы" Then | |
|
| |
|
57 Кб. |
|
| Пробовал и так и так не получается... Вот прикрепил часть базы... | |
|
| |
|
|
|
| ну вот и вы купились на этот прикол....
вот так работает
Private Sub ПолеСоСписком71_AfterUpdate()
If Me![ПолеСоСписком71] = "Травмы" Then
Me![ПолеСоСписком73].Locked = False
Me![ПолеСоСписком73].BackColor = 16777215
Else
Me![ПолеСоСписком73] = ""
Me![ПолеСоСписком73].Locked = True
Me![ПолеСоСписком73].BackColor = -2147483633
End If
End Sub | |
|
| |
|
|
|
| Блин, а я [полесосписком71] пробовал подставить, а [полесосписком73] нет...Спасибо!!! | |
|
| |
|
|
|
| Вот еще вопрос нарисовался...
Нужно немного усложнить этот код
Private Sub ПолеСоСписком71_AfterUpdate()
If Me![ПолеСоСписком71] = "Травмы" Then
Me![ПолеСоСписком73].Locked = False
Me![ПолеСоСписком73].BackColor = 16777215
Else
Me![ПолеСоСписком73] = ""
Me![ПолеСоСписком73].Locked = True
Me![ПолеСоСписком73].BackColor = -2147483633
End If
End Sub
|
Хотелось бы чтобы при Locked=True, при нажатии Tab курсор переходил бы сразу из [ПолеСоСписком71] в [ПолеСоСписком75] проскакивая заблокированное [ПолеСоСписком73], а если Locked = False, то в [ПолеСоСписком73]...
Что нужно для этого сделать??? | |
|
| |
|
|
|
|
| к сообщению osmor даже добавить нечего....
на событие ПоляСоСписком73 - Получение фокуса повесь вот это
If Me!ПолеСоСписком73.Locked=True Then Me!ПолеСоСписком75.SetFocus | |
|
| |
|
|
|
| Супер!!! Спасибо!!! Узнал новую функцию и как ей пользоваться... | |
|
| |