Käytetään kohteeseen
Access for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Koskee seuraavia

Yhdistelmäruutuobjekti

Lomakeobjekti

Luetteloruutuobjekti

Raporttiobjekti

Palauttaa tai määrittää ADO -tietuejoukko- tai DAO -tietuejoukko -objektin, joka vastaa määritetyn lomakkeen, raportin, luetteloruudun tai yhdistelmäruudun ohjausobjektin tietuelähdeia. Luku/kirjoitus.

lauseke.Tietuejoukko

lauseke Pakollinen. Lauseke, joka palauttaa jonkin Koskee seuraavia -luettelon objekteista.

Huomautuksia

Tietuejoukko-ominaisuus palauttaa tietuejoukon objektin, joka mahdollistaa tietojen selaamisen lomakkeen, raportin, luetteloruudun tai yhdistelmäruudun ohjausobjektissa. Jos lomake perustuu esimerkiksi kyselyyn, viittaus Tietuejoukko-ominaisuuteen vastaa samaa kyselyä käyttävän Tietuejoukko-objektin kloonausta. Toisin kuin käytettäessä Tietojoukon klooni -ominaisuutta, jos nykyistä tietuetta muutetaan lomakkeen Tietojoukko-ominaisuudella palautetussa tietojoukossa, samalla määritetään myös lomakkeen nykyinen tietue.

Tämä ominaisuus on käytettävissä vain käyttämällä Visual Basic for Applications (VBA) -koodia.

Tietuejoukko-ominaisuuden luku-/kirjoituskäytäntö määritetään ominaisuuden määrittämässä tietuejoukossa olevan tietuejoukon lajin (ADO tai DAO) ja tietojen lajin (Access tai SQL) mukaan.

Tietuejoukon laji

SQL-tietojen perusteella

Access-tietojen perusteella

ADO

Luku/kirjoitus

Luku/kirjoitus

DAO

Luku/kirjoitus

Seuraavassa esimerkissä avataan lomake ja tietuejoukko. Lomake sidotaan sitten tietuejoukkoon määrittämällä lomakkeen Tietuejoukko-ominaisuudeksi juuri luotu Tietuejoukko-objekti.

Global rstSuppliers As ADODB.RecordsetSub MakeRW()DoCmd.OpenForm "Suppliers"Set rstSuppliers = New ADODB.RecordsetrstSuppliers.CursorLocation = adUseClientrstSuppliers.Open "Select * From Suppliers", _CurrentProject.Connection, adOpenKeyset, adLockOptimisticSet Forms("Suppliers").Recordset = rstSuppliersEnd Sub

Käytä Tietuejoukko-ominaisuutta:

  • Jos haluat sitoa useita lomakkeita yhteiseen tietojoukkoon. Näin voit synkronoida useita lomakkeita. Esimerkiksi...

    Set Me.Recordset = Forms!Form1.Recordset

  • Jos haluat käyttää Tietuejoukko-objektin kanssa sellaisia menetelmiä, joita ei suoraan tueta lomakkeissa. Voit esimerkiksi käyttää Tietuejoukko-ominaisuutta ADO Etsi- tai DAO Etsi -menetelmien kanssa mukautetussa valintaikkunassa tietueen löytämiseksi.

  • Jos haluat kietoa tapahtuman (joka voidaan vetää takaisin) erilaisten muokkausten ympärille, jotka vaikuttavat useisiin lomakkeisiin.

Lomakkeen Tietuejoukko-ominaisuus voi myös muuttaa Tietuelähde-, Tietuejoukon laji- ja Tietuelukitus-ominaisuuksia. Lisäksi jotkin tietoihin liittyvät ominaisuudet voidaan kirjoittaa yli, kuten Suodatin-, Suodattimen käyttäminen-, Lajittelu- ja Lajittelun käyttäminen -ominaisuudet.

Jos lomakkeen tietuejoukkoa haetaan Kyselyn suorittaminen uudelleen -menetelmällä (esimerkiksi Forms(0).Recordset.Requery), lomakkeen sidonta saatetaan poistaa. Jos haluat päivittää tiedot tietuejoukkoon sidotussa lomakkeessa, määritä lomakkeen Tietuelähde-ominaisuus entiselleen (Forms(0).RecordSource = Forms(0).RecordSource).

Kun lomake on sidottu tietuejoukkoon, ilmenee virhe, jos käytät Suodata muodon mukaan -komentoa.

Esimerkki

Seuraavassa esimerkissä käytetään Tietuejoukko-ominaisuutta Tietuejoukko-objektin uuden kopion luomiseen nykyisestä lomakkeesta ja tulostetaan sitten kenttien nimet Virheenkorjaus-ikkunaan.

Sub Print_Field_Names()    Dim rst As DAO.Recordset, intI As Integer    Dim fld As Field    Set rst = Me.Recordset    For Each fld in rst.Fields        ' Print field names.        Debug.Print fld.Name    NextEnd Sub

Seuraavassa esimerkissä käytetään Tietuejoukko-ominaisuutta ja Tietuejoukko-objektia synkronoimaan tietuejoukko lomakkeen nykyisen tietueen kanssa. Kun yrityksen nimi valitaan yhdistelmäruudusta, käytetään Etsi ensimmäinen -menetelmää paikallistamaan tämän yrityksen tietue, jolloin lomake näyttää löydetyn tietueen.

Sub SupplierID_AfterUpdate()    Dim rst As DAO.Recordset    Dim strSearchName As String    Set rst = Me.Recordset    strSearchName = CStr(Me!SupplierID)    rst.FindFirst "SupplierID = " & strSearchName    If rst.NoMatch Then        MsgBox "Record not found"    End If    rst.CloseEnd Sub

Seuraava koodi auttaa määrittämään, millaisen tietuejoukon lajin Tietuejoukko-ominaisuus palauttaa eri tilanteissa.

Sub CheckRSType()    Dim rs as Object    Set rs=Forms(0).Recordset    If TypeOf rs Is DAO.Recordset Then        MsgBox "DAO Recordset"    ElseIf TypeOf rs is ADODB.Recordset Then        MsgBox "ADO Recordset"    End IfEnd Sub

Tarvitsetko lisäohjeita?

Haluatko lisää vaihtoehtoja?

Tutustu tilausetuihin, selaa harjoituskursseja, opi suojaamaan laitteesi ja paljon muuta.