100 likes | 319 Views
Excel’de VBA programlama (Visual Basic Application) Ders 6. Dosyalarla Çalışmak.
E N D
Dosyalarla Çalışmak Verilerin kalıcı olarak saklamak için bir disk dosyasına kaydetmek gerekir. Her uygulamanın kendine has dosya formatı vardır (.doc, .xls, .bas vb. ). Bunarın dışında veri yönetimi için güçlü ve esnek araçlar kullanmak gerekebilir. Dosya İşlemleri Dosya Erişimi Dosya Yönetimi • Dosya veya klasör oluşturulması • kopyalanması • silinmesi • taşınması • Veri okunması • yazılması • eklenmesi
Dosya İşlemleri İçin Yaklaşımlar Klasik Yaklaşım Nesne Yönelimi • Basic dili deyimleri kullanarak • Metin ve İkili dosya erişimleri • Dosya yönetimi • FSO (File System Object) • Metin dosya erişimi • Dosya yönetimi • Bu iki yaklaşımın kullanımı; sonucu değil, kodun nasıl yazılacağını etkiler. • Her iki yaklaşım birlikte kullanılabilir.
Klasik Yaklaşım ileDosya Yönetimi Klasik Yaklaşım ile Dosya Yönetimi • VBA’da çok ender kullanılır. • Eski kodlardan gelen alışkanlıkları sürdürenler için konmuştur. FileAttr(dosyano, bayrak) deyimi Açık dosya ile ilgili bilgileri döndürür. Eğer =1 ise dönen değer dosya modunu tanımlar. 1=INPUT, 2=OUTPUT, 4= RANDOM, 8=APPEND, 32= BINARY Killdosyaadi deyimi Belirtilen dosyayı siler. dosyaadiargünamı * ve ? joker karakterleri içerebilir.
Klasik Yaklaşım ileDosya Yönetimi Input yerine Output, Append, Binary ve Random yazarak yandaki programı yeniden deneyiniz
Klasik Yaklaşım ileDosya Yönetimi RmDir dizin adı deyimi belirtilen dizini(klasörü) siler MkDir dizin adıdeyimi belirtilen dizini(klasörü) oluşturur. ChDir dizin adıdeyimi belirtilen dizini(klasörü) geçerli yol(path) yapar. CurDir sürücü adı deyimi belirtilen sürücüdeki geçerli dizini(klasörü) döndürür. Dir(Şablon) deyimi şablon ile eşleşen dosya veya dosyaların adını döndürür. Name eskiAs Yeni deyimi dosya adını değiştirir.
Nesne Yönelim ileDosya Yönetimi • Nesne yönelim ile dosya erişiminde kullanılan FileSystemObject sınıfı dosya yönetiminde de kullanılır. Nesne hiyerarşisinin en üstünde olduğu için ilk önce FSO sınıfının bir örneği oluşturularak başlanır. • Dim fso • Set fso = CreateObject("Scripting.FileSystemObject") • Sistemdeki bütün sürücüleri,klasörleri ve dosyaları yönetmenize izin verir. Hiyerarşideki nesneler; • Sürücü sistemdeki tek bir disk sürücüsüne karşılık gelir • Folder bir sürücüdeki tek bir klasöre yada altdizine karşılık gelir. • File bir klasördeki tek bir dosyaya karılık gelir.