Formüller

Excel Seçenek Düğmesi ile Makro Çalıştırmak


excel-secenek-dugmesi-ile-makro-calistirmak

Excel Seçenek Düğmesi ile Makro Çalıştırmak

Geliştirici sekmesine bağlı olan Excel’in Form Denetimlerini daha önce en ince ayrıntısına kadar incelemiştik. Hatta blogumu takip eden değerli kullanıcılarım, daha önceden Form Denetimleri > Seçenek Düğmesi hakkında da detaylı bir inceleme yaptığımı hatırlamış olabilirsiniz. Önceki konumuzda Seçenek Düğmesi yani Option Button nasıl eklenir ve nasıl kullanılır bunları incelemiştik.

Şimdi ise Seçenek Düğmesini ekledikten sonra Makro ile çalışan bir düzen oluşturmak istiyorum, bunun için yeni bir konu açma ihtiyacı duydum.

  • Seçenek Düğmesi Eklemek,

Öncelikle çalışma sayfamıza 5 adet seçenek düğmesi ekliyorum.

bes-adet-secenek-dugmesi

Daha önceden de anlatmış olduğum gibi, seçenek düğmelerine hücre bağlantısı vereceğim. Bunun için eklenen seçenek düğmelerinden herhangi birisine sağ tıklayıp, açılan menüden Denetim Biçimlendir’e tıklıyoruz ve  Hücre Bağlantısını $D$2 olarak belirliyoruz.

denetim-bicimlendir

Arıtk hücre bağlantısı belirlediğimize göre, Seçenek düğmelerinde seçim yapabiliriz. Her tıkladığınız düğmeninz bir değeri bulunmakta, örnek resimdeki gibi 2.düğmeyi seçerseniz D2 hücresine “2” değeri gelecek.

secenek-dugmesi-hucre-baglantisi

  • Seçenek Düğmesi ile Makro Çalıştırmak,

D2 hücresine bağlı olarak, her bir seçenek düğmesine farklı bir makro atamak için, aşağıdaki gibi bir düzen oluşturmamız gereklidir.

Sub Cizgi ()

If Worksheets("Sayfa1").Range("D2").Value = 1 Then

'Makronuzu buraya yazın"

End If

End Sub

Ben örnek olarak, D2 hücresindeki kriterlere göre 5 farklı makro oluşturmak için, Mesaj Kutusu ile karşılık vermek istiyorum.

Bunun için çalışma sayfanızın Makro bölümüne (Bkz.Makro Nasıl Eklenir?) aşağıdaki kodları ekleyin.

Sub Makro1()
If Worksheets("Sayfa1").Range("D2").Value = 1 Then
 Worksheets("Sayfa1").Range("G2") = "Makro1 Uygulandı"
 End If
End Sub

Sub Makro2()
If Worksheets("Sayfa1").Range("D2").Value = 2 Then
 Worksheets("Sayfa1").Range("G2") = "Makro2 Uygulandı"
 End If
End Sub

Sub Makro3()
If Worksheets("Sayfa1").Range("D2").Value = 3 Then
 Worksheets("Sayfa1").Range("G2") = "Makro3 Uygulandı"
 End If
End Sub

Sub Makro4()
If Worksheets("Sayfa1").Range("D2").Value = 4 Then
 Worksheets("Sayfa1").Range("G2") = "Makro4 Uygulandı"
 End If
End Sub

Sub Makro5()
If Worksheets("Sayfa1").Range("D2").Value = 5 Then
 Worksheets("Sayfa1").Range("G2") = "Makro5 Uygulandı"
 End If
End Sub

Bu kodlarda anlatılmak istenen, D2 hücresi 1 ise, Birinci makro, 2 ise İkinci makro, 3 ise Üçüncü makro, 4 ise Dördüncü makro son olarak 5 ise Beşinci makroyu çalıştırır.

Örnekte makro sonucu olarak G2 hücresine yazı yazma şeklinde uygulanmıştır. Uygulanacak olan makroda değişiklik yapmak isterseniz,

Worksheets(“Sayfa1”).Range(“G2”) = “Makro5 Uygulandı“” yazan kodu silip onun yerine kendi kodlarınızı ekleyebilirsiniz.

Alternatif bir örnek daha vermek gerekirse, kırmızı ile belirttiğim kodu silip, aşağıdaki gibi mesaj uyarısını ekleyebilirsiniz.

 MsgBox "Selam"

Örnek çalışma dosyasını indirmek için aşağıdaki linki tıklayabilir, bizi takip etmek için mail adresiniz ile ücretsiz abone olabilirsiniz.


Örnek Çalışma Dosyasını İndir >>> Excel Secenek Dügmesi Ekleme ve Makro Çalıştırmak


Bir Cevap Yazın

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