Šajā apmācībā mēs uzzināsim, kā atvērt ierakstu kopu, saskaitīt ierakstu skaitu ierakstu kopā, pārvietoties pa ierakstu kopu, pievienot ierakstu, atjaunināt ierakstu, nolasīt vērtību no ieraksta un dzēst ierakstu.
Mums ir piekļuves tabula ar nosaukumu ProductsT, kas parādīta zemāk:
Ierakstu kopas atvēršana
Vispirms mums jāizveido datu bāze, kuru plānojam izmantot, šajā gadījumā tā ir pašlaik atvērtā datu bāze. Pēc tam mēs varam izmantot metodi CurrentDB.OpenRecordSet, lai atvērtu/izveidotu mūsu ierakstu kopu.
Lai izveidotu ierakstu kopu, kas ļaus mums manipulēt ar datiem tabulā ar nosaukumu ProductsT, mēs izmantosim šādu kodu:
1 | CurrentDb.OpenRecordset ("ProductsT") |
Ierakstu skaita skaitīšana, izmantojot VBA
Kad esat izveidojis ierakstu kopu, jūs, visticamāk, vēlētos ar to darīt kaut ko noderīgu vai kaut kādā veidā manipulēt ar tajā esošajiem datiem. Jūs varat saskaitīt datu kopas ierakstu skaitu (šajā gadījumā tabulu ar nosaukumu ProductsT), izmantojot šādu kodu:
1 | MsgBox CurrentDb.OpenRecordset ("ProductsT"). RecordCount |
Atkārtota ierakstu kopa, izmantojot VBA
Izmantojot mūsu ierakstu kopu, tiek ievadīts šāds kods:
1234567891011121314 | Apakšraksts RecordSet_Loop ()Izgaismojiet mūsu datu bāzi kā datu bāziAptumšojiet mūsu ierakstus kā ierakstuIestatiet ourDatabase = CurrentDbIestatiet ourRecordset = ourDatabase.OpenRecordset ("ProductsT")Vai līdz mūsu ierakstam.EOFMsgBox ourRecordset! ProductIDourRecordset.MoveNextCilpaBeigu apakš |
VBA programmēšana | Kodu ģenerators strādā jūsu labā!
Ieraksta pievienošana RecordSet
Izmantojiet metodi Recordset.AddNew, lai RecordSet pievienotu jaunu ierakstu:
1234567891011121314 | Apakš ierakstsSet_Add ()Ar CurrentDb.OpenRecordset ("ProductsT").Pievieno jaunu! [Produkta ID] = 8! [ProductName] = "Produkts HHH"! [ProductPricePerUnit] = 10! [ProductCategory] = "Rotaļlietas"! [UnitsInStock] = 15.AtjauninātBeigt arBeigu apakš |
Rezultāts ir šāds:
Ierakstu kopas atjaunināšana
Jums jāizmanto metode Recordset.AddNew vai Recordset.Edit. Pēc šī paziņojuma jums jāizmanto metode Recordset.Update, lai saglabātu izmaiņas.
Vērtību lasīšana no ieraksta
Lai izveidotu ierakstu, pašreizējais ieraksts ir jāizmanto metode Recordset.FindFirst. Pēc tam jums jāizmanto Recordset.Fields, lai norādītu, kuru lauku apskatīt.
12345678910111213141516 | Sub RecordSet_ReadValue ()Izgaismojiet mūsu datu bāzi kā datu bāziAptumšojiet mūsu ierakstus kā ierakstuIestatiet ourDatabase = CurrentDbIestatiet ourRecordset = ourDatabase.OpenRecordset ("ProductsT", tips: = RecordsetTypeEnum.dbOpenDynaset)Ar mūsu ierakstu kopu.FindFirst "ProductName =" & "'Product CCC'"Ja .NoMatch TadMsgBox "Nav atrasta atbilstība"CitādiMsgBox ourRecordset.Fields ("ProductCategory")Beigas JaBeigt arBeigu apakš |
Rezultāts ir šāds:
Vai esat noguris no VBA koda piemēru meklēšanas? Izmēģiniet AutoMacro!
Ieraksta dzēšana no ierakstu kopas
Lai izdzēstu ierakstu no ierakstu kopas, vispirms tas jāpadara par pašreizējo ierakstu, izmantojot metodi Recordset.FindFirst. Pēc tam varat to izdzēst, izmantojot metodi Recordset.Delete. Šis kods parāda, kā datu kopā izdzēst 2. ierakstu:
1234567891011121314151617181920212223 | Apakš ierakstsSet_DeleteRecord ()Izgaismojiet mūsu datu bāzi kā datu bāziAptumšojiet mūsu ierakstus kā ierakstuIestatiet ourDatabase = CurrentDbIestatiet ourRecordset = ourDatabase.OpenRecordset ("ProductsT", tips: = RecordsetTypeEnum.dbOpenDynaset)Ar mūsu ierakstu kopu.FindFirst "ProductName =" & "'Product BBB'"Ja .NoMatch TadMsgBox "Nav atrasta atbilstība"CitādiourRecordset.DeleteBeigas JaBeigt ar'Atvērt galduDoCmd.Close acTable, "ProductsT"DoCmd.OpenTable "ProductsT"Beigu apakš |
Rezultāts ir šāds: