TOP

VBA-Ders 12.1. Kullanıcı Formları (UserForm)

UserForm nesnesi, uygulamanın kullanıcı arayüzünün parçası olan bir pencere veya iletişim kutusudur.

UserForm projenizde pencereler veya iletişim kutuları oluşturmanıza olanak tanır. Formda çizim yapar ve kontrolleri görebilirsiniz.

Kullanıcı formlarının konum, boyut, renk ve davranışlarının yönleri gibi görünümlerini tanımlayan özellikleri vardır.

Formu geliştirirken:

  • Her form penceresinde Küçült, Genişlet ve Kapat düğmeleri bulunur.
  • Seçenekler iletişim kutusunun Genel sekmesinde şekil ızgarasını görüntüleyebilir ve ızgara çizgilerini boyutlandırabilirsiniz.
  • Formdaki denetimleri çizmek için araç çubuğundaki düğmeleri kullanın. Seçenekler iletişim kutusunun Genel sekmesinde, denetimleri form kılavuzuyla hizalanacak şekilde özelleştirebilirsiniz.

  • Form Oluştur (UserForm)

    UserForm eklemek için yeni bir modül eklediğimizde aynı şeyi yapmamız gerekiyor:

    Bundan sonra form (UserForm) ve araç çubuğu (Araç Kutusu) görünecektir:

    Özellikler penceresini (Properties) görmüyorsanız, görüntülendiğinden emin olun ve ardından UserForm adını düzenleyerek başlayın (böylece daha sonra kolayca bulabilirsiniz):

    Bir formun (UserForm) tıpkı bir çalışma kitabı veya sayfada olduğu gibi kendi etkinlikleri vardır. Bir etkinlik eklemek için UserForm'a çift tıklayın.

    Şimdi bunun nasıl çalıştığını görmek için iki etkinlik oluşturalım. İlk olay, UserForm'un başlangıç boyutunu ayarlayacak ve ikincisi, kullanıcı tıkladığında boyutunu 50 piksel artıracaktır.

    UserForm_Initialize olayı, UserForm başlatıldığında etkinleşecektir:

    Private Sub UserForm_Initialize()
        my_userform.Height = 100
        my_userform.Width  = 100
    End Sub
    

    Kodu basitleştirmek için UserForm adı yerine Me kullanabiliriz (çünkü bu kod çalıştığımız UserForm'ın içindedir):

    Private Sub UserForm_Initialize()
        Me.Height = 100
        Me.Width  = 100
    End Sub
    

    İkinci olay, kullanıcı UserForm'a tıkladığında gerçekleşecektir:

    Private Sub UserForm_Initialize()
        Me.Height = 100
        Me.Width  = 100
    End Sub
    
    Private Sub UserForm_Click()
        Me.Height = Me.Height + 50
        Me.Width  = Me.Width + 50
    End Sub
    

    Başlatma Formu (UserForm)

    Bir prosedürde UserForm komutunu çalıştırmak için Göster'i kullanın:

    Sub show_userform()
         my_userform.Show
    End Sub