Excel’de Makroyla Butona Fonksiyon Atama ve If-Else Yapısı

İlk yazımda Excel’de Makro ekranını açmayı ve Makro komutlarıyla bazı hücre işlemlerini anlatmıştım. Bu yazımda Excel çalışma sayfasına bir buton ekleyeceğim, bu butona bazı işlevler (fonksiyonlar) atayacağım ve if-else örneği yapacağım. Bir önceki ilgili konuya buraya tıklayarak ulaşabilirsiniz. Ayrıca If komutunu göstereceğim ve hücreye girilen sayıya göre istenilen hücrenin rengini değiştiren örnek uygulamadan bahsedeceğim.

Makroyla Buton Oluşturma ve Fonksiyon Atama

Öncelikle çalışma sayfamıza Ekle bölümünden butonum için bir şekil ekliyorum ve üzerine “Hesapla” yazıyorum.


Excel Şekil Ekleme
İçerisine ‘Hesapla’ yazdığım dikdörtgen şekil

Bir önceki yazımda bahsettiğim gibi Module ekliyorum ve ismini Ders2 yapıyorum. Ardından eklediğim modüle sub Ders2_function() yazıp enter’a basıyorum. Excel ekranına geri dönüp eklediğim şekle sağ tıklayıp “makro ata” seçeneğini seçiyorum. (Bu işlem makro ekranında kodlar yazıldıktan sonra da yapılabilir.)

Şekle Makro Ata

Burada az önce yazdığım Ders2_function() isimli makroyu seçiyorum. Bu sayede yazacağım fonksiyonu biraz önce eklediğimiz ‘Hesapla’ yazan şekle yani butona atamış oldum. Artık şekle tıklandığında fonksiyona yazdığım kodlar çalışacak.

Şimdi fonksiyonu düzenlemeye sıra geldi. Yazacağım fonksiyon F4 hücresindeki değere göre F8 hücresine renk ataması yapacak. Burada If yapısı şu şekilde:

İlgini Çekebilir  Bir Doksanlarda Çocuk Olmak Kitabı - Mahalleden Arkadaşlar

                If  “şartlar”  Then
                               “İşlemler”
                ElseIf  “şart”
                               “İşlemler”
            Else
                               “İşlem”
                EndIf

İlgili kodlar;

Sub Ders2_function()
If Worksheets("Sayfa1").Range("F4").Value = "" Then
MsgBox ("Sayı Girmeyi unutmayın")
ElseIf Worksheets("Sayfa1").Range("F4").Value < 13 Then
Worksheets("Sayfa1").Range("F8").Interior.Color = RGB(127, 18, 200)
ElseIf Worksheets("Sayfa1").Range("F4").Value < 18 Then
Worksheets("Sayfa1").Range("F8").Interior.Color = RGB(55, 55, 55)
Else
Worksheets("Sayfa1").Range("F8").Interior.Color = RGB(125, 234, 99)
End If
End Sub

Kodlarını yazıp kaydediyorum. İsterseniz burada bazı tasarımsal değişiklikler yapabilirsiniz. Ben F4 ve F8 hücrelerine kalın dış kenarlık verdim ki görselliği daha net anlaşılsın.

Hücreye Kalın Dış Kenarlık Ekleme

F4 hücresi boşken verdiği hata mesajı;

Boş Ekran Hata Mesajı

Diğer renkler için deneyelim;

İlk Değer
İkinci Değer
Üçüncü Değer

Diğer değerlerden bazıları da bu şekilde. RGB renk kodlarını değiştirerek istediğiniz renkleri verebilirsiniz.

Bu yazımda size Excel Makro komutlarıyla If – Else yapısını ve buton oluşturmayı anlattım. Görüş, önerileriniz ya da kafanıza takılan bir yer varsa yorum olarak yazmaktan çekinmeyin.

Bir cevap yazın

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

%d blogcu bunu beğendi: