EXCEL

Excel kullanıcı tanımlı fonksiyonlar


SAYILAR

Okunma Sayı 3706
Beğenme Sayı 6
Yorum Sayı 0
ETİKET BULUTU

  • VBA EXCEL VBA EXCEL VBA AÇ VISUAL BASIC VISUAL BASIC EDITOR

Excel kullanıcı tanımlı fonksiyonlar

Halil Yılmaz , 26.03.2019 15:56:34


Excel’de Kullanıcı Tanımlı Fonksiyonlar (UDF = User Defined Functions)
 
Excel’de tanımlı yüzlerce standart fonksiyon olmasına rağmen bazen bu fonksiyonlar ihtiyaçlarınızı karşılayamaz veya bu fonksiyonları iç içe kullanmak zorunda kalıp uzun fonksiyonların içinde kaybolursunuz. Bu makalenin ilk bölümünde Excel’de kullanıcıların kendi fonksiyonlarını tanımlamalarını ve ikinci bölümde ise bunları eklenti olarak Excel’e tanıtmayı öğreneceksiniz. Fonksiyonlar için orta seviyede Visual Basic 6.x bilgisi yeterli olacaktır.

Kullanıcı Tanımlı Fonksiyon (KTF) Nasıl Oluşturulur?
1. Yeni bir Excel kitabı açın.
2. Visual Basic Düzenleyicisi’ni başlatın. (Kısayol: Alt + F11)
3. Yeni bir modül ekleyin. (Insert -> Module)
4. Module1 adlı modülün içine kendi fonksiyonunuzu yazın.
5. Visual Basic Düzenleyicisi’ni kapatın. (Kısayol: Alt+Q ya da Alt+F4)
6. İşlev Ekle butonuna tıklayın. (Kısayol: Shift + F3) 
7. Kullanıcı Tanımlı kategorisini seçin. Karşınızda sizin yarattığınız fonksiyonlar görünecektir.

KTF Örneği…
Bu örnek kullanıcının belirttiği iki kenar uzunluğunu kullanarak bir dik üçgenin hipotenüs uzunluğunu hesaplar.
 

Function Hipotenus_Hesaplama(ByVal Kenar_Uzunlugu_1 As Integer, ByValKenar_Uzunlugu_2 As Integer) As Double
Hipotenus_Hesaplama = Math.Sqr(Kenar_Uzunlugu_1 ^ 2 + Kenar_Uzunlugu_2 ^ 2)
End Function

KTF Örneği…
Bu örnek ise kullanıcının belirlediği bir sayının asal sayı olup olmadığını kontrol eder ve sonucu “Asal sayı” veya “Asal Sayı Değil” olarak döndürür.

Function Asal_Sayi_Kontrol(ByVal Sayi As Integer) As String 
Dim i As Integer
‘Sayı çift ise veya 2’den küçük bir sayı ise döngüye girmeden sonuç döndürülür 
If i Mod 2 = 0 or i < 2 Then 
Asal_Sayi_Kontrol = "Asal sayı değil" 
Else 
For i = 3 To Math.Sqr(Sayi) Step 2 
If Sayi Mod i = 0 Then Asal_Sayi_Kontrol = "Asal sayı değil": Exit Function 
Next i 
End If 
Asal_Sayi_Kontrol = "Asal sayı" End Function 

İsteğinize bağlı daha karmaşık fonksiyonlar yaratmak sizin elinizde fakat KTF’nin bazı kısıtlamaları mevcuttur. En bilinen kısıtlamalar ve dezavantajları şunlardır:
1.      Bir hücrenin veya bir çalışma sayfasının yapısını ve biçimini değiştiremezsiniz.
2.      Formülü içeren hücre dışında başka bir hücreyi değiştiremezsiniz.
3.      C++ veya FORTRAN dillerinde yazılan fonksiyonlardan daha yavaş çalışırlar.

KTF’leri Eklenti olarak Excel’e tanıtma
1.      Farklı Kaydet seçeneğini seçin. (Kısayol: F12)
2.      Açılan Farklı Kaydet diyalog kutusundan Kayıt Türü’nü Excel Eklentisi olarak seçin.


Bundan sonraki aşamalar Excel 2003 ile sonraki versiyonlar arasında farklılık göstermektedir.

Excel 2007/2010/2013
1.       Excel’in sol üst köşesindeki Office butonunu tıklayın.
2.       Excel Seçenekleri butonunu tıklayın.
3.       Açılan Excel Seçenekleri formundan Eklentiler sekmesini seçin.
4.       Yönet Açılır Listesi’nde Excel Eklentileri seçili olduğundan emin olun ve Git butonuna tıklayın.
5.       Karşınıza gelen Eklentiler formunda Gözat butonuna tıklayın.
6.       Eklenti dosyanızı bulun ve Tamam butonuna tıklayın.


Yorumlar


Henüz Hiç Yorum Yapılmamış.