Bu dosya, ADO (ActiveX Data Objects) bağlantısı üzerinden bir Excel çalışma kitabının tablo şemasını okumayı ve belirli bir tabloyu DROP TABLE komutuyla silmeyi gösteren bir VBA örneğidir. Veritabanı mantığıyla Excel dosyalarını yönetmek isteyenler için hazırlanmış kısa bir makro şablonudur.
Dosya makro içerir, açarken makroları etkinleştirmeniz gerekir.
Dosya makro içerir, açarken makroları etkinleştirmeniz gerekir.
Dosyanın içeriği
- Sayfa1: A1:A18 aralığında yer alan çalışma sayfasıdır; formül, grafik veya tablo içermez.
- Module1: Emre adlı ana makroyu içerir.
- Module2: xfdsf adlı yardımcı deneme makrosunu içerir.
Makrolar
- Emre: adodb.connection nesnesi oluşturur ve Microsoft.Ace.Oledb.12.0 sağlayıcısıyla, bu dosyanın bulunduğu klasördeki Filtreyi_Filtrele.xlsm çalışma kitabına bağlanır. OpenSchema(adSchemaTables) ile kitaptaki tabloların listesini alır, kayıtlar arasında dolaşır ve TABLE_NAME değeri "evn" olan kayıt bulunduğunda DROP TABLE evn$ komutunu çalıştırır. İşlem sonunda kayıt kümesi ve bağlantı kapatılır.
- xfdsf: Şema listesinde "elma" adlı tabloyu arar, bulunca adını Immediate penceresine yazdırıp döngüden çıkar. Bu makro kendi bağlantısını oluşturmaz; con nesnesine ihtiyaç duyar ve kodun sonunda fazladan bir End Sub satırı bulunur. Bu nedenle bu haliyle çalıştırılmadan önce düzenlenmesi gerekir.
Nasıl kullanılır
- Dosyayı açın ve makroları etkinleştirin.
- Silme işleminin yapılacağı Filtreyi_Filtrele.xlsm dosyasını bu dosyayla aynı klasöre koyun ve kapalı olduğundan emin olun.
- Alt+F11 ile VBA düzenleyicisini açın, Module1 içindeki dosya adını ve "evn" tablo adını kendi çalışma kitabınıza göre değiştirin.
- Emre makrosunu F5 ile veya Alt+F8 penceresinden çalıştırın.