|
Как выделить заданную строчку в форме с помощью VBA?
|
|||
---|---|---|---|
#18+
Добрый день! Есть разделенная форма с кнопкой, которая обновляет (Requery) источник формы. После обновления исчезает выделение записи. Как мне сохранить позицию записи, которая была выделена до обновления. И как выделить заданную строчку после обновления? Я как понял Код: vbnet 1.
- показывает номер строки, которая выделена ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2016, 12:31 |
|
Как выделить заданную строчку в форме с помощью VBA?
|
|||
---|---|---|---|
#18+
Один из способов такой: сохраняешь в переменную ID записи на которой стоит маркер до обновления. После обновления надо найти этот ID в клоне рекордсета. По идее, этого долдно хваоить. Но, если недостаточно, тогда присвоить букмарк клона букмарку формы. Чтобы избежать мигания формы при этом, на время этой аперации отключить эхо и painting формы (не забыть их включить при выходе из процедуры! через обработчик ошибок). Да, еще, после обновления есть шанс, что сохраненного ID в рекордсете уже нет. Так что, нужно обязательно проверить результат поиска в клоне ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2016, 13:19 |
|
Как выделить заданную строчку в форме с помощью VBA?
|
|||
---|---|---|---|
#18+
Rivkin Dmitry, А могли бы привести код примера? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2016, 13:42 |
|
Как выделить заданную строчку в форме с помощью VBA?
|
|||
---|---|---|---|
#18+
Нашел следующий способ, через bookmark. Код: vbnet 1. 2. 3. 4. 5.
Единственное, что меня еще не устраивает, что после я хочу, чтобы запись была, вся выделенная, как на 1 рис. (до обновления), а сейчас после обновления как на рис 2 ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2016, 14:27 |
|
Как выделить заданную строчку в форме с помощью VBA?
|
|||
---|---|---|---|
#18+
Нет, это неверно. Букмарки рекордсета после обновления изменятся Как то так (код пишу без проверки, сорри)Ж Dim id as LongInt id = Me.id Me.Requery Me.Recordset.Find "id = " & id If not Me.Recordset.NoMutch Then Me.Bookmark = Me.Recordset.BookMark End If ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2016, 14:42 |
|
Как выделить заданную строчку в форме с помощью VBA?
|
|||
---|---|---|---|
#18+
Rivkin Dmitry, Когда у меня Источник не изменяется (т.е. сколько вначале было записей до обновления, столько и осталось, очередность не менялась), в моём случае я обновляю только значение в поле одной записи. То bookmark - работает ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2016, 15:55 |
|
Как выделить заданную строчку в форме с помощью VBA?
|
|||
---|---|---|---|
#18+
Вопрос остался, как выделить запись, как на рисунке? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2016, 15:56 |
|
|
start [/forum/topic.php?fid=45&msg=39174427&tid=1613903]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
35ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
others: | 312ms |
total: | 434ms |
0 / 0 |