Bu eğitimde, bir Recordset'i açmayı, Recordset'teki kayıt sayısını saymayı, Recordset'te döngü yapmayı, bir kayıt eklemeyi, bir kaydı güncellemeyi, bir kayıttan bir değer okumayı ve bir kaydı silmeyi öğreneceğiz.
Aşağıda gösterilen ProductsT adlı bir Erişim Tablomuz var:
Kayıt Kümesini Açma
İlk önce kullanmayı düşündüğümüz veritabanını kurmamız gerekiyor, bu durumda o şu anda açık olan veritabanıdır. Daha sonra Recordset'imizi açmak/oluşturmak için CurrentDB.OpenRecordSet yöntemini kullanabiliriz.
ProductsT adlı tablodaki verileri işlememize izin verecek bir Kayıt Kümesi oluşturmak için aşağıdaki kodu kullanırdık:
1 | CurrentDb.OpenRecordset ("ÜrünlerT") |
VBA kullanarak Kayıt sayısını sayma
Bir Kayıt Kümesi oluşturduktan sonra, büyük olasılıkla onunla yararlı bir şeyler yapmak veya içindeki verileri bir şekilde değiştirmek isteyeceksiniz. Aşağıdaki kodu kullanarak veri kümenizdeki (bu durumda ÜrünlerT adlı tablo) kayıt sayısını sayabilirsiniz:
1 | MsgBox CurrentDb.OpenRecordset("ÜrünlerT").RecordCount |
VBA kullanarak bir RecordSet üzerinden döngü yapmak
Aşağıdaki kod, RecordSet'imiz boyunca döngü halindedir:
1234567891011121314 | Alt RecordSet_Loop ()Veritabanı Olarak Veritabanımızı DimKayıt Kümemizi Kayıt Kümesi Olarak KarartınOurDatabase = CurrentDb olarak ayarlayınOurRecordset = ourDatabase.OpenRecordset("ProductsT") olarak ayarlayınBizimRecordset.EOF'a Kadar YapınMsgBox bizimRecordset!ProductIDbizimRecordset.MoveNextDöngüAlt Bitiş |
VBA Programlama | Code Generator sizin için çalışıyor!
RecordSet'e kayıt ekleme
RecordSet'e yeni bir kayıt eklemek için Recordset.AddNew yöntemini kullanın:
1234567891011121314 | Alt RecordSet_Add()CurrentDb.OpenRecordset("ProductsT") ile.Yeni ekle![ÜrünKimliği] = 8![ÜrünAdı] = "Ürün HHH"![ÜrünFiyatPerBirim] = 10![ProductCategory] = "Oyuncaklar"![BirimInStock] = 15.Güncellemeİle bitmekAlt Bitiş |
Sonuç:
Kayıt Kümesini Güncelleme
Recordset.AddNew veya Recordset.Edit yöntemini kullanmanız gerekir. Bu ifadeden sonra değişiklikleri korumak için Recordset.Update yöntemini kullanmanız gerekir.
Bir Kayıttan Değer Okuma
Geçerli kaydı bir kayıt yapmak için Recordset.FindFirst yöntemini kullanmanız gerekir. Ardından, hangi alana bakılacağını belirtmek için Recordset.Fields kullanmanız gerekir.
12345678910111213141516 | Sub RecordSet_ReadValue ()Veritabanı olarak Veritabanımızı DimKayıt Kümemizi Kayıt Kümesi Olarak KarartınOurDatabase = CurrentDb olarak ayarlayınOurRecordset = ourDatabase.OpenRecordset("ProductsT", Type:=RecordsetTypeEnum.dbOpenDynaset) olarak ayarlayınKayıt Setimiz ile.FindFirst "ÜrünAdı = " & "'Ürün CCC'si'"Eğer .NoMatch iseMsgBox "Eşleşme Bulunamadı"BaşkaMsgBox ourRecordset.Fields("ÜrünKategori")Bitirİle bitmekAlt Bitiş |
Sonuç:
VBA Kodu Örnekleri Aramaktan Bıktınız mı? AutoMacro'yu deneyin!
Kayıt Kümesinden Kayıt Silme
Bir Recordset'ten bir kaydı silmek için önce onu Recordset.FindFirst yöntemini kullanarak mevcut kayıt yapmanız gerekir. Daha sonra Recordset.Delete yöntemini kullanarak silebilirsiniz. Aşağıdaki kod, veri kümesindeki 2. kaydın nasıl silineceğini gösterir:
1234567891011121314151617181920212223 | Alt RecordSet_DeleteRecord ()Veritabanı Olarak Veritabanımızı DimKayıt Kümemizi Kayıt Kümesi Olarak KarartınOurDatabase = CurrentDb olarak ayarlayınOurRecordset = ourDatabase.OpenRecordset("ProductsT", Type:=RecordsetTypeEnum.dbOpenDynaset) olarak ayarlayınKayıt Setimiz ile.FindFirst "ÜrünAdı = " & "'Ürün BBB'si'"Eğer .NoMatch iseMsgBox "Eşleşme Bulunamadı"BaşkabizimRecordset.SilBitirİle bitmek'Tabloyu Yeniden AçınDoCmd.Close acTable, "ÜrünlerT"DoCmd.OpenTable "ÜrünlerT"Alt Bitiş |
Sonuç: