ник: Гоблин
Подскажите плиз
При открытии формы пишу код:
Dim rst As DAO.Recordset
Dim a As Integer
a = DCount("[Поле]", "[Таблица]", "ПолеКритерия= '" &некое условие & "'") 'колич записей по критерию
Set rst = CurrentDb.OpenRecordset("SELECT [Таблица].Поле1, [Таблица].Поле2, [Таблица].Поле3 FROM [Таблица] WHERE ((([Таблица].Поле1)= " _
& " '" &Некое условие& "'));")
With rst
If .RecordCount <> 0 Then
Do While Not .EOF 'конец будет loop
For i = 1 To a
Me("Надпись" & i).Caption = !Поле2 'присваиваем i-ой надписи значение поля2
Next i
.MoveNext
Loop
End If
End With
Так вот получаю такой эффект. Допустим определяет, что записей отсеяно по данному условию 4, стало быть сначала первую запись влепит на 4 надписи, затем вторую на место тех же 4-х и так 4 раза. А надо, что бы первую - в первую надпись. Вторую - во вторую и т.д. Для этого необходимо отслеживать текущее положение рекордсета, ввести еще переменную, и присвоить ей это значение. Типа рекордсет на 1-ой записи таблицы. Присваиваем ее содержание из поля первой надписи. Далее рекордсет на 2-ой... и так столько, сколько записей получилось по критерию. Как определить текущее положение рекордсета?
Или что-то другое делать надо?