Tietuejoukko-ominaisuus

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
Next
End 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.Close
End 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 If
End Sub
Kehitä Office-taitojasi
Tutustu koulutusmateriaaliin
Saat uudet ominaisuudet ensimmäisten joukossa
Liity Office Insider -käyttäjiin

Oliko näistä tiedoista hyötyä?

Kiitos palautteesta!

Kiitos palautteestasi! Näyttää siltä, että Office-tukiedustajamme avusta voi olla sinulle hyötyä.

×