Excelde VBA programlama Visual Basic Application Ders 7
Excel’de VBA programlama (Visual Basic Application) Ders 7 Kullanıcı Formları
Kullanıcı Formları • Metin Kutuları Görüntüleme ve düzenleme • Onay Kutuları Seçenek işaretleme • Liste Kutuları Görüntüleme ve seçme • Etiket Görüntüleme • İlave Kontroller örn. takvim veya video veya Activex
Her kullanıcı formu bir User. Form nesnesi ile temsil edilir. Her kullanıcı formu User. Forms koleksiyonunda bulunur. Bir projeye yeni bir kullanıcı formu eklemek için Insert menüsünden User. Form komutu seçilir.
Kullanıcı formuna yerleştirilebilecek denetimlerin bulunduğu araç kutusu Kullanıcı formunun özellikleri
Kullanıcı Formu Özellikleri Kullanıcı formu bir çok özelliğe sahiptir. Bu özellikler ya tasarım yada kod kullanılarak çalışma zamanında düzenlenir. Properties penceresinden bir özellik seçip F 1 tuşuna basılarak ilgili özellik hakkında ayrıntılı bilgi edinilebilir. Kullanıcı Formunun Önemli Özellikleri Caption Formun başlık kısmında görüntülen metni Height Punto cinsinden formun yüksekliği ( 1 punto = 1/72 inç) Mouse. Pointer Formun üzerine geldiğinde fare imlecinin görüntüsü Name Koleksiyona başvurmak için kullanılan isim Picture Arka plan resmi olarak kullanılacak resim dosyası Picture. Alignment Bir resmin formdaki yerini belirler. Picture. Size. Mode Resim büyüklüğünün nasıl değiştirileceğini belirtir. Show. Modal True ise uygulamanın diğer bölümleri çalıştırılmadan önce form kapatılmalıdır. False ise uygulamanın diğer kısımları çalışırken form ekranda kalabilir.
Kullanıcı Formuna Kontrol Eklemek Kullanıcı formunun en önemli kısmını oluşturur. Araç kutusunda her kontrol tipi için bir simge yer alır. Önemli Kontroller Label Kullanıcı tarafından düzenlenemeyen bir metin görüntüler. Text. Box Kullanıcı tarafından düzenlenebilen bir metin görüntüler. List. Box İçinden seçim yapılabilecek öğe listesi görüntüler. Combo. Box Textbox ve Liste. Box kontrollerinin işlevlerini birleştirir. Check. Box Açılıp kapatılabilen bir seçenek görüntüler Option. Button Check. Box’a benzer. Ancak aynı anda bir seçenek etkin olabilir. Bir grup oluştururken önce Frame kontrolü yerleştirilir. Toggle. Button Açık yada kapalı konumları olabilen düğme. Frame Option. Button gibi diğer kontrolleri gruplamak için kullanılır. Command. Button Bir işlemi gerçekleştirmek için kullanılan düğme. Image Bir resim görüntüler.
Kontrollerin Adlandırılması Bir kontrol kullanıcı formuna eklendiği zaman varsayılan bir isim atanır. Ancak anlaşılır bir isimle değiştirmek programın denetlenmesi açısından faydalıdır. Bu durum Name özelliği ile sağlanır.
Kontrollerde Sekme Sırası Çalıştırma işlemi esnasında belirli kontrolü etkinleştirilebilir. Kullanıcı Tab yada Shift+Tab ile etkin kontrolü değiştirebilir. Etkinlik durumu sekme sırasına göre kontrolün Tab. Index özelliği ile belirlenir. Bu özellik 0 ile n-1 arasında değer alabilir. Bir kontrolün Tab. Stop özelliği False olarak ayarlanır ise Tab tuşu ilerlenirken bu kontrol atlanır. Set. Default. Tab. Order metodunu çalıştırarak Tab sırası değiştirilebilir. Bu komut 7. tab sırasında
Kullanıcı Formlarının Kodları ve Olay Yordamları Kullanıcı Formları kontroller ile birlikte hertürlü VBA kodu içerebilir. • Değişkenler, Kullanıcı tanımlı tipler ve sabit deklarasyonlar • Özellik yordamları • Altyordamlar, Fonksiyon Yordamları • Olay Yordamları Kullanıcı Formu ve kontrollerine atanabilir. Olay Yordamı Kullanıcı formu ve kontrollerinin oluşturduğu her nesne algılayabileceği olaylara sahiptir. Bütün olay yordamları özeldir. Private Sub Nesneismi_olayismi() …. End Sub
Olaylar Herhangi bir tuşa basmak, mouse’u hareket ettirmek, mouse’un herhangi bir tuşuna bir veya iki kere basmak, herhangi bir nesnenin value özelliğini değiştirmek, herhangi bir nesne etkin iken enter tuşuna basmak gibi olaylardır. Change Bir nesnenin value özelliği değiştiğinde oluşur. Mesela, Check. Box kontrolüne tıklanması, Text. Box kontrolündeki metnin düzenlenmesi yada Scroll. Bar kontrolünün hareket ettirilmesi gibi. Click Kullanıcının ilgili nesneye mouse’nin sol tuşuna veya enter tuşuna basılması ile oluşur. Check. Box kontrolünün değeri boşluk çubuğuna basıldığında değişir. Kullanıcı bir nesneye tıkladığında önce Mouse. Down ve Mouse. Up olayları gerçekleşir.
Dbl. Click Bir nesne çift tıklandığında gerçekleşir. Dbl. Click olayını tekrar kullanmak için Cancel değeri yordam içinde True olarak ayarlanır. Enter, Exit Bir kontrol etkin iken aynı formun başka kontrolü etkinleştirildiğinde gerçekleşir. Enter olayı etkinlik değiştirilirken, exit ise değiştirildiğinde gerçekleşir. Enter olayı kullanıcıya etkinleştireceği kontrol hakkında bilgi vermk için kullanılabilir. Exit olayında Cancel argümanı True olarak ayarlanırsa etkinliğin başka kontrole gitmesi engellenir. Key. Down, Key. Up Bir kontrol etkin durumda iken herhangi bir tuşa basıldığında veya bırakıldığında gerçekleşir. Keycode basılan tuşa ait tuş kodunu veren bir tamsayıdır.
Key. Press Yazdırılabilir bir tuşa basıldığında etkinleşir. • Yazdırılabilir herhangi bir tuş • Bu tuşlarla birlikte ctrl tuşu • Özel karakterlerle birlikte ctrl tuşu • Backspace tuşu • ESC tuşu’ na basıldığında gerçekleşir. • TAB • ENTER • Bir ok tuşu gerçekleşmez
- Slides: 12