Bu dosya, bir Access veritabanındaki kayıtların ADO bağlantısıyla okunup bir UserForm üzerindeki ListBox nesnesine yüklenmesini gösteren örnek çalışmadır. Kodlar kısa tutulduğundan ADO ile veri çekme mantığını öğrenmek isteyenler için başlangıç örneği olarak kullanılabilir.
Dosyanın içeriği
- Sayfa1: Boş çalışma sayfasıdır; formüller ve veri içermez. Formu açan şekil bu sayfa üzerinde yer alır.
- UserForm1: İçinde ListBox1 nesnesi bulunan formdur. Kayıtlar form açılırken yüklenir.
- Module1: Şekle tıklandığında formu açan makroyu içerir.
Makrolar
Dosya makro içerir, açarken makroları etkinleştirmeniz gerekir. Kodlarda dosya silme ya da dışarıya bağlantı gibi zararlı bir işlem yoktur; yalnızca yerel Access dosyasına bağlanılır.- OtomatikŞekil1_Tıklat: UserForm1 formunu açar. Sayfadaki şekle atanarak çalıştırılır.
- UserForm_Initialize: Form açılırken çalışır. Excel sürümü 11'den büyükse Microsoft.ACE.OLEDB.12.0, değilse Microsoft.Jet.OLEDB.4.0 sağlayıcısıyla, çalışma kitabının bulunduğu klasördeki veriler.accdb dosyasına bağlanır. select * from Tablo sorgusunun sonucunu geçici olarak oluşturulan "kayıtseti" sayfasına alan adlarıyla birlikte aktarır, ListBox1 nesnesinin RowSource değerini bu sayfadaki A1:C4 aralığına bağlar, sütun sayısını 3 yapar ve sütun başlıklarını açar. Ardından geçici sayfayı uyarı vermeden siler ve bağlantı nesnelerini kapatır.
Nasıl kullanılır
- Zip dosyasını açın ve makroları etkinleştirerek xlsm dosyasını başlatın.
- veriler.accdb dosyasının çalışma kitabıyla aynı klasörde olduğunu ve içinde Tablo adlı tablonun bulunduğunu kontrol edin.
- Sayfa1 üzerindeki şekle tıklayın; form açılır ve kayıtlar ListBox içinde başlıklarıyla listelenir.
- Tablonuzda 3 sütun ve 3 kayıttan farklı bir yapı varsa, kodda ListBox1.RowSource aralığını ve ColumnCount değerini verilerinize göre değiştirin.