Работа с табличными данными

Diroled
Дата: 04.10.2005 13:33:17
Есть форма на которой размещена подчененная форма в виде таблицы.
На основной форме есть кнопка на нажатие которой выставляется лог. 1

Как сделать чтобы я выбрал из таблицы(подчиненная форма) запись(путем перемещения курсора мышки, и одним нажатием выделил запись, или несколько записей) нажал на кнопку на главной форме установил в нужном поле выделенных записей лог.1.
Т.е. каким методом я могу получить информацию о записи которая выделена в таблице
Тяп-ляп
Дата: 04.10.2005 13:49:51
Примерно вот так:
Это должно быть в модуле главной формы.
Подформа находится в контроле с именем sf
Логическое поле в подформе называется MyField

Dim lgSelTop As Long                    'выделено в подформе sf
Dim lgSelHeight As Long                 'выделено в подформе sf

Private Sub sf_Exit(Cancel As Integer)
  lgSelTop = Me.sf.Form.SelTop
  lgSelHeight = Me..Form.SelHeight
End Sub

Private Sub bt_Click()
Dim SQL As String
Dim strClassName As String
Dim strValueList As String
Dim n As Long
Dim retval As Long
On Error GoTo errH
If lgSelHeight = 0 Then Exit Sub    'ничего не выделено
Dim rs As ADODB.Recordset
Set rs = Me.sf.Form.Recordset
DoCmd.Echo True
rs.MoveFirst
rs.Move lgSelTop - 1
DoCmd.Echo True
For n = 1 To lgSelHeight
        rs("MyField") = True
        rs.Update
    DoEvents
    rs.MoveNext
Next n
Set rs = Nothing
lgSelHeight = 0
lgSelTop = 0
Exit Sub
errH:
    DoCmd.Echo True
    MsgBox Err.Number & " " & Err.Description, vbCritical, "bt_Click"
End Sub
Diroled
Дата: 05.10.2005 09:06:10
Тяп-ляп
Примерно вот так:
Это должно быть в модуле главной формы.
Подформа находится в контроле с именем sf
Логическое поле в подформе называется MyField

Dim lgSelTop As Long                    'выделено в подформе sf
Dim lgSelHeight As Long                 'выделено в подформе sf

Private Sub sf_Exit(Cancel As Integer)
  lgSelTop = Me.sf.Form.SelTop
  lgSelHeight = Me..Form.SelHeight
End Sub

Private Sub bt_Click()
Dim SQL As String
Dim strClassName As String
Dim strValueList As String
Dim n As Long
Dim retval As Long
On Error GoTo errH
If lgSelHeight = 0 Then Exit Sub    'ничего не выделено
Dim rs As ADODB.Recordset
Set rs = Me.sf.Form.Recordset
DoCmd.Echo True
rs.MoveFirst
rs.Move lgSelTop - 1
DoCmd.Echo True
For n = 1 To lgSelHeight
        rs("MyField") = True
        rs.Update
    DoEvents
    rs.MoveNext
Next n
Set rs = Nothing
lgSelHeight = 0
lgSelTop = 0
Exit Sub
errH:
    DoCmd.Echo True
    MsgBox Err.Number & " " & Err.Description, vbCritical, "bt_Click"
End Sub


Спасибо буду разбираться и применять