ActiveX Denetimleri

Excel’de Onay Kutusu ile Makro Çalıştırmak (CheckBox)


Excel’de Onay Kutusu ile Makro Çalıştırmak (Checkbox)

Geliştirici sekmesinde bulunan “Ekle” menüsünde, iki farklı Denetim araçları bulunmaktadır. Bunlardan ilki, aşağıdaki resimde olduğu gibi “Form Denetimleri”dir, hemen altında ise “ActiveX Denetimleri” bulunmaktadır.

İki denetim arasındaki fark şu şekilde ayırt edilebilir. Form Denetimleri‘nde bulunan araçlar, Excel’de hücre bağlantısı gerektiren ve formül ile bağ kurarak çalıştırılan denetimlerdir. ActiveX Denetimleri ise VBA makro kodları ile çalıştırılır.

Form Denetimlerine ait olan araçları daha önceki konularımızda uzun ve detaylı bir şekilde incelemiştik. Dilerseniz geçmiş konulardan takip edebilirsiniz. Bugün ise ActiveX Denetimlerine ait olan araçlardan CheckBox yani OnayKutusu’nu VBA Makro Kodları ile nasıl çalıştırılır onu öğreneceğiz.

Bilmeyenler için kısa bir not geçiyorum, bu işlemler için Excel’de geliştirici sekmesini aktif etmeniz gerekir. Nasıl yapılır linkten öğrenebilirsiniz.

  • Onay Kutusu Eklemek

Form Denetimlerine ait Onay Kutusu eklemek için diğer alternatif konularımızı inceleyebilirsiniz. Makro ile çalışabilen bir onay kutusu eklemek için,
Geliştirici > Ekle > ActiveX Denetimlerinden, üçüncü sırada bulunan OnayKutusu’na tıklayın ve Excel sayfanızda herhangi bir yere ekleyin.

activex-onay-kutusu-eklemek

Ben örnek dosyamıza yukarıdaki resimde olduğu gibi üç adet CheckBox ekledim.

Eklenen CheckBox’lar üzerinde işlem yapabilmek için, Geliştirici sekmesinde bulunan “Tasarım Modu” seçeneğinin aktif olması gerekir. Bu seçenek normal şartlarda, CheckBox eklediğiniz zaman otomatik olarak aktif bir şekilde gelmektedir. Sonrasında CheckBox’ların kullanımı için, “Tasarım Modu” na tekrar tıklanır ve aktif hale getirilir. Önemli ve ince bir detaydır unutmayalım.

Şimdi eklediğimiz CheckBox’lara sırasıyla isim verelim. Bunu yapabilmek için, Tasarım Modu açıkken CheckBox1’i seçin ve Denetimler’den Özelliklere tıklayın (Resimdeki gibi).

 

  • Onay Kutusuna İsim Vermek

Akabinde CheckBox1’e ait Properties penceresi açılacaktır. Yani bu aracın özellik penceresidir. Buradan “Caption” yazan yere isim verebilirsiniz.

Ben örnek olarak renk isimleri vermek istedim, sırasıyla Kırmızı ve Mavi yazıyorum, üçüncü OnayKutusu’na “Tümünü Seç” adı veriyorum.

  • Birinci CheckBox seçildiğinde J2 hücresine Kırmızı yazılsın,
  • İkinci CheckBox seçildiğinde J4 hücresine Mavi yazılsın
  • Üçüncü CheckBox seçildiğinde Bir ve İkinci Checkbox’ın tümünü seçip J2 ve J4 hücrelerine renk isimleri yazılsın.

Bunun için aşağıdaki kodları, CheckBox Kod Bölümüne yapıştırın. Temsili olarak örnek işlemi aşağıdaki ekran görüntüsünden inceleyebilirsiniz.

excel-checbox-makro-kodlari

  • Onay Kutusu ile Makro Çalıştırmak

Private Sub CheckBox1_Click()
If CheckBox1.Value = True Then
[J2] = "Kırmızı"
[J4] = ""
[J6] = ""
Else
[J2] = ""
[J4] = ""
[J6] = ""
End If
End Sub
Private Sub CheckBox2_Click()
If CheckBox2.Value = True Then
[J2] = ""
[J4] = "Mavi"
[J6] = ""
Else
[J2] = ""
[J4] = ""
[J6] = ""
End If
End Sub
Private Sub CheckBox3_Click()
If CheckBox3.Value = True Then
CheckBox1.Value = True
CheckBox2.Value = True
[J2] = "Kırmızı"
[J4] = "Mavi"
Else
CheckBox1.Value = False
CheckBox2.Value = False
[J2] = ""
[J4] = ""
[J6] = ""
End If
End Sub

Sonuç aşağıdaki gibi olacaktır.

Sorularınız için yorum kısmından ulaşabilir, takıldığınız noktalar için örnek dosyamızı indirip inceleyebilirsiniz.

Örnek Çalışma Kitabını indir >>> Excel’de Onay Kutusu ile Makro Çalistirmak


This Post Has 8 Comments

  1. Pingback: Excel’de Renk Değiştiren Takvim 2017 | | Çizgi Akademi - İleri Düzey Excel Eğitimleri

  2. Pingback: Excel Onay Kutusu Eklemek ve Eğer Şarta Bağlamak | | Çizgi Akademi - İleri Düzey Excel Eğitimleri

  3. TARIK Reply

    merhaba ,
    bir sorum olacak excelde birden fazla sayfaya (1-31) ( her sayfada aynı noktaya ) aynı anda check box atamak mümkünmüdür? mümkün ise yolunu paylaşırsanız sevinirim , son olarak şirket sahibiyim excel konusunda yardıma ihtiyacım var bir yere kadar geldim ve tıkanmış durumdayım, personel iş takip formu yapıyorum ancak gözüken o ki benim yapım şeklimle 30 saati gececek .. tek tek uğraşmak, yardımcı olabilecek iseniz görüşmek isterim

    saygılarımla
    tarık er 0549 717 11 77

    • Çizgi Reply

      Merhaba Tarık Bey

      Birden fazla sayfa seçimi yapıldığı zaman Geliştirici sekmesinde Ekle butonu pasif olmakta,
      Kopyalama yönteminde ise uyarı verir.
      Bu yüzden isteğiniz mümkün değil.

    • Çizgi Reply

      Fakat alternatif yöntem sayfayı çoğaltarak deneyebilirsiniz.

  4. Fatih Pektas Reply

    Bu onay kutularını bir kere tıkladıktan sonra tekrar onayı kaldırmak isterse şifre istemesi mümkün mü? Sizin örneğinize bakarak Kırmızı onay kutusunu işaretledikten sonra tekrar kaldırmak istediğinde şifre sorsun. şifrenin komplike olması gerekli değil. basit 4 rakamlı bir şifre sorsun istiyorum.

  5. Fatma Kayser Reply

    Peki bu makrodan kaçtane yapabiliriz. İstediğimiz kadar olabilir mi? Ayrıca onay kutuları açılır kapanır olabilir mi?

    • Çizgi Reply

      Merhaba,

      Onay kutusu sınırsız oluşturabilirsiniz,
      Açılır kapanır şeklinde onay kutusu olmaz fakat Birleşik Giriş Kutusu seçeneğini kullanarak yapabilirsiniz.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir