Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
 Как запретить любой ввод в поле а только выбо из списка  [new]
Гросс..
Guest
Можно ли сделать так, чтобы в поле со список нельзя было писать а только выбирать?
17 авг 06, 17:20    [3018703]     Ответить | Цитировать Сообщить модератору
 Re: Как запретить любой ввод в поле а только выбо из списка  [new]
Larr`
Member

Откуда: у парня сирийская грусть?
Сообщений: 748
Причем, как ни странно, это свойство называется "Ограничиться списком"
17 авг 06, 17:25    [3018741]     Ответить | Цитировать Сообщить модератору
 Re: Как запретить любой ввод в поле а только выбо из списка  [new]
Latuk
Member

Откуда: N 54°38', E 037°35'
Сообщений: 7310
есть свойство LimitToList
Еще можно перекрыть поле со списком обычным полем
с значением ссылкой на поле со списком
оставить снаружи только треугольник для выпадения списка
17 авг 06, 17:26    [3018762]     Ответить | Цитировать Сообщить модератору
 Re: Как запретить любой ввод в поле а только выбо из списка  [new]
Гросс..
Guest
Да шо вы говорите :) мне именно нужно чтобы пипл никак не мог работать со списоком при помощи клавиатуры. Если ограничить то он может стереть выбранное значение например ... а я хочу чтобы он не мог его стереть ... а только изменить.
17 авг 06, 17:29    [3018786]     Ответить | Цитировать Сообщить модератору
 Re: Как запретить любой ввод в поле а только выбо из списка  [new]
bubucha
Member

Откуда:
Сообщений: 5642
неа, свойствами не получится. можно так:
Private Sub ПолеСоСписком_NotInList(NewData As String, Response As Integer)
Response = True
ПолеСоСписком.SetFocus
End Sub

17 авг 06, 17:32    [3018820]     Ответить | Цитировать Сообщить модератору
 Re: Как запретить любой ввод в поле а только выбо из списка  [new]
Redrick
Member

Откуда: Питер
Сообщений: 883
Me.AllowDeletions = False
Me.AllowAdditions = False
А изменение по умолчанию True стоит. Только это работает на всю форму.
17 авг 06, 17:35    [3018848]     Ответить | Цитировать Сообщить модератору
 Re: Как запретить любой ввод в поле а только выбо из списка  [new]
BULK INSERT
Member

Откуда: Ленинград
Сообщений: 4615
Гросс..
Да шо вы говорите :) мне именно нужно чтобы пипл никак не мог работать со списоком при помощи клавиатуры. Если ограничить то он может стереть выбранное значение например ... а я хочу чтобы он не мог его стереть ... а только изменить.


ValidationRule <> Null
17 авг 06, 17:42    [3018918]     Ответить | Цитировать Сообщить модератору
 Re: Как запретить любой ввод в поле а только выбо из списка  [new]
bubucha
Member

Откуда:
Сообщений: 5642
ValidationRule <> Null

да, но тогда, список не сможет быть пустым.
17 авг 06, 17:56    [3019038]     Ответить | Цитировать Сообщить модератору
 Re: Как запретить любой ввод в поле а только выбо из списка  [new]
BULK INSERT
Member

Откуда: Ленинград
Сообщений: 4615
bubucha
ValidationRule <> Null

да, но тогда, список не сможет быть пустым.


никто не говорит, что список должен мочь быть пустым - речь идет только о выборе из списка...
17 авг 06, 18:08    [3019146]     Ответить | Цитировать Сообщить модератору
 Re: Как запретить любой ввод в поле а только выбо из списка  [new]
BULK INSERT
Member

Откуда: Ленинград
Сообщений: 4615
BULK INSERT
bubucha
ValidationRule <> Null

да, но тогда, список не сможет быть пустым.


никто не говорит, что список должен мочь быть пустым - речь идет только о выборе из списка...


в смысле

если предусматривать такую возможность как пустое значение поля со списком, значит по постановке список этого поля должен содержать пустое значение.

значит удалить значение поля со списком это выбрать пустое значение из списка поля - все сходится
17 авг 06, 18:13    [3019197]     Ответить | Цитировать Сообщить модератору
 Re: Как запретить любой ввод в поле а только выбо из списка  [new]
e_basil
Member

Откуда: Москва (и окрестности)
Сообщений: 1755
в глобальном модуле пишем функцию

Public Function ResponseCombo() As Variant
    On Error Resume Next
    Screen.ActiveControl.Undo
    ResponseCombo = acDataErrContinue
    Err.Number = 0
End Function

на каждый combobox, который надо ограничить, вешаем процедуру:
Private Sub cmbRoomID_NotInList(NewData As String, Response As Integer)
    Response = ResponseCombo
End Sub

не забудем
LimitToList = True

и смотрим, что получается


зы. можно без аплодисментов
17 авг 06, 22:29    [3019929]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Access Ответить