Access: фокус на конкретное Поле в Ленточной форме
От: Аноним  
Дата: 30.12.04 11:36
Оценка:
Имеется ленточная форма с полями из таблицы.
Записи выводятся по фильтру, задаваемому в VBA.
Необходимо установить фокус на заданное поле (номер записи известен).
Инструкция [ИмяПоля].SetFocus – устанавливает фокус на первую выводимую запись, а мне нужно на конкретную.

Просьба помочь советом.
Поздравляю Всех с наступающим Новым Годом!

С уважением,
Андрей

P.S. Могу реализовать задачу в Одиночной форме со списком (получая записи по запросу), но выглядит не красиво ...
Re: Ответ и новый вопрос...
От: Andrew72 Россия  
Дата: 30.12.04 13:01
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Имеется ленточная форма с полями из таблицы.

А>Записи выводятся по фильтру, задаваемому в VBA.
А>Необходимо установить фокус на заданное поле (номер записи известен).

Отвечаю на свой вопрос и задаю новый


Выделение конкретного Поля в Ленточной форме возможно реализовать так:
    Me.Form.Recordset.AbsolutePosition = НомерОтображаемойЗаписи
    [ИмяКаталога].SetFocus


Но в этом случае мне придется организовать цикл, приводящий в соответствие НомерОтображаемойЗаписи с требуемым НомеромЗаписи.

Вопрос:
1. Насколько корректно такое решение?
2. Возможно ли добиться требуемого результата более простыми средствами?


С уважением,
Андрей
Re[2]: Ответ и новый вопрос...
От: Elena_ Россия  
Дата: 30.12.04 14:34
Оценка:
Здравствуйте, Andrew72, Вы писали:

А>>Имеется ленточная форма с полями из таблицы.

А>>Записи выводятся по фильтру, задаваемому в VBA.
А>>Необходимо установить фокус на заданное поле (номер записи известен).

Может что-то вроде

Form.Recordset.FindFirst "ID = " & lID
Пользователь — друг программиста!
Re[3]: Ответ и новый вопрос...
От: Andrew72 Россия  
Дата: 30.12.04 15:10
Оценка:
Здравствуйте, Elena_, Вы писали:

E_>Может что-то вроде


E_>
E_>Form.Recordset.FindFirst "ID = " & lID
E_>


Елена, огромное Вам спасибо!
Всех благ в наступающем году!

С уважением,
Андрей
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.