Фокус на элементе списка

HVV83_Vladimir
Дата: 30.11.2009 15:00:27
Помогите установить фокус в списке на нужную запись.

На элементе формы "список", на нем есть набор записей, мне необходимо организовать поиск в этом списке и если элемент будет найден то установить на нем фокус.
П-Л
Дата: 30.11.2009 15:05:29
Список имеет и RowSource и ItemData и Recordset - всего с избытком.
HVV83_Vladimir
Дата: 30.11.2009 15:38:01
П-Л,

а все-таки, как для начала организовать поиск, в цикле или SQL-запросом???, и с каким свойством списка сравнивать??
abend
Дата: 30.11.2009 16:01:45
П-Л
Список имеет и RowSource и ItemData и Recordset - всего с избытком.

Любое из этих свойств - F1
HVV83_Vladimir
Дата: 30.11.2009 17:19:09
уточню вопрос:

источником строк "списка" является запрос типа ID, Data. В списке мы видим только записи Data, мне же необходимо сравнивать по ID.

Пробую пока вот так, но ничего не находит, ответа похожего на мой вопрос на форумах не нашел:

If Me.listData.RowSource = "3036" Then 
    MsgBox "Да"
Else:
        MsgBox "Нет"
End If

Пишет нет, хотя запись с таким ID в списке существует
Guest33
Дата: 30.11.2009 17:42:29
Если хотите использовать RowSource
Private Function IDInLIST(id As Integer) As Boolean
Dim txt As String
    txt = Replace(Me.MyList.RowSource, ";", "")
    txt = "select count(*) from (" & txt & ") where id=" & id
    IsIDExists = CurrentProject.Connection.Execute(txt)(0) > 0
End Function
Или перебором
П-Л
Дата: 30.11.2009 18:07:07
HVV83_Vladimir
источником строк "списка" является запрос типа ID, Data. В списке мы видим только записи Data, мне же необходимо сравнивать по ID.
Пробую пока вот так, но ничего не находит, ответа похожего на мой вопрос на форумах не нашел:
Прочитайте, наконец, Ф1
ID хранится в самом поле. Ничего искать и перебирать не надо. То, что показвается Data - полезная только для глаз фикция.
HVV83_Vladimir
Дата: 30.11.2009 19:06:46
Guest33,

спасибо, но запрос получается громоздким, сейчас пробую через ItemData:
Me.lboProstoiZayavkaLiftyVProstoe.ItemData(0)
но так программа выбирает только первый элемент списка, подскажите как перебрать все элементы списка)))
mds_world
Дата: 30.11.2009 21:06:35
HVV83_Vladimir
подскажите как перебрать все элементы списка)))


For i = 0 To Me.lboProstoiZayavkaLiftyVProstoe.ListCount - 1
    Debug.Print Me.lboProstoiZayavkaLiftyVProstoe.ItemData(i)
Next