Программирование на Visual Basic | Microsoft Access. Смена источника данных

В этом разделе сайта находятся примеры из сборника программ "Архив файлов на Microsoft Access". В нем рассказывается о программировании форм, отчетов, таблиц и других объектов. Используйте этот архив для изучения работы с приложением Microsoft Office Access и программированием на Visual Basic for Application. Тем кто уже знаком с VBA, используйте поиск для нахождения кодов. Наберите, например, DAO, ADO, Recordset и найдете нужную ссылку для решения проблемы с программированием

Microsoft Access. Смена источника данных

21. Это достаточно гибкий способ менять источник данных в вашей форме. Он не использует строковые переменные, а применяет ключевое слово set для запроса данных из DAO или ADO.

Private Sub Form_Open(Cancel As Integer)
    Me.Дата = DateSerial(2005, 9, 20)
    butDAOrecordset_Click
End Sub

Private Sub Дата_AfterUpdate()
    butDAOrecordset_Click
End Sub

Private Sub butADOrecordset_Click()
Dim rst As ADODB.Recordset
    ' Создание запроса
    Set rst = New ADODB.Recordset
    ' Заполняем запрос
    With rst
        .CursorType = adOpenKeyset
        .LockType = adLockOptimistic
        .Source = "[Мои книги]"
        .Open , CurrentProject.Connection, , , adCmdTable
    End With
    Set Me.subForm.Form.Recordset = rst
End Sub
   
Private Sub butDAOrecordset_Click()
Dim strParm As String, strSQL As String
Dim qry As DAO.QueryDef, dbs As DAO.Database
    Set dbs = CurrentDb
    Set qry = dbs.QueryDefs("qryExample22")
    qry.Parameters("paramДата") = Nz(Me.Дата, Date)
    Set Me.subForm.Form.Recordset = qry.OpenRecordset
'    strParm = "PARAMETERS [paramДата] DATETIME; "
'    strSQL = strParm  "SELECT * FROM [Мои книги] WHERE [Дата]=[paramДата]"
'    Me.Список.Form.InputParameters = "paramДата DateTime=#09/20/2000#"
End Sub

Добавить комментарий

Loading