Fonksiyonlar

Eğer Formülünü Makro ile Yazmak


Makro, Excel Çalışma Sayfasında yapılan işlemleri, bir dizi kod ile kolaylaştıran aksiyondur.

Bugün ele alacağımız konu Visual Basic Editor ile “If Then” Eğer makrosu nasıl oluşturulur, kuralları nelerdir. Ana mantık tamamıyla iki işlemden oluşuyor. Birincisi Kriter, ikincisi de Aksiyondur.

If Kriter Then Aksiyon Else Aksiyon End If


Şimdi yukarıdaki mantığa uygun olarak bir makro oluşturalım. Yalnız temel mantığı anlamak için ilk adım: makro için başvuru adresi belirlemektir.

Adres: Makroda işlem yapabilmek için adres belirleyin. Mesela A1 hücresiyle ilgili bir çağrışım yapmak istiyorsanız, [ =EĞER(A1>0;”Büyük”;”Küçük”) ]  fonksiyonunda bulunan A1 değerini Visual Basic’te şu şekilde belirtmek gerekiyor;

Worksheets(“Sayfa1”).Range(“A1”).Value (Evet gördüğünüz bu kadar uzun bir cümle ile A1 hücresinin adresini belirtiyoruz.) Daha sonraki işlevini düşünürsek bir uzun cümle ile sonsuz sayıda kısa işlem yapabilmek mümkün) bu makronun Türkçe tercümesi ise

ÇalışmaKitabı(“Sayfa1”).Hücre(“A1”).Değeri şeklindedir.

 Visual Basic Editor’de bir hücrenin adresi bu şekilde belirtilir. Gelelim şimdi bu adresi makromuzun hangi aşamasında kullanacağımız kısmına…

Sub Cizgi()
If Kriter Then
Eğer Doğruysa 1.Aksiyon ...
Else
Eğer Yanlışsa 2.Aksiyon...
End If

Yapılmak istenen işlem:

Eğer A1 hücresi sıfırdan büyükse Büyük, değilse Küçük sonucunu getirmek.

 

Bu işlemin fonksiyon Karşılığı:

=EĞER(A1<>””;”Büyük”;”Küçük”)

 

Aynı işlemin Makro Karşılığı şu şekilde olur.

If Worksheets("sayfa1").Range("a1") > 0 Then
ActiveCell.FormulaR1C1 = "Büyük"
Else
ActiveCell.FormulaR1C1 = "Küçük"
End If

Son olarak yukarıdaki makromuzun açılış ve kapanış komutlarını ekliyoruz. Yani makroyu şu iki satır arasına ekleyip çalışma kitabımızın Visual Basic Editor bölümüne kopyalamanız yeterli olur.

 

Sub Cizgi ()

Makronuzu Buraya Yazın

End Sub

 

İşlem tamam. Aşağıdaki linkten örnek dosya indirip çalışmamızı kontrol edebilirsiniz.

Eger Formülünü Makro ile Yazmak


This Post Has 4 Comments

  1. Pingback: Excel Makro ile Klasör Açma | VBA | | Çizgi Akademi - İleri Düzey Excel Eğitimleri

  2. mehmet aygun Reply

    excelde bir formül yazmak istiyorum yardımcı olursanız sevinirim. a1 hüresinde5 rakam yazıyor bu rakamlardan son üç rakam eğer 100 ve 150 ise hücreye 550 yazsın eğer değilse 510 yazmasını istiyorum

  3. Pingback: Excel Select Case Yapısı | | Çizgi Akademi - İleri Düzey Excel Eğitimleri

Bir cevap yazın

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