Anasayfa | Akademik Forum | Sizden Gelenler | Sipariş
Menü Açıklamaları
Sorular - Cevaplar
Makaleler
Makrolar
Yerleşik İşlevler
Animasyonlar
Yumurtalar
Fonksiyonlar
MTK Programlar
ExcelCE
Dosya İndir
Neler Yaptık?
İletişim
Fonksiyonlar
Fonksiyonlara Giriş
Excel Çalışma Sayfası Menü Çubuğunda bulunan Ekle menüsüne tıklandığınızda açılan listede İşlev komutu görülür. Bu komuta tıkladığınızda ise İşlev Yapıştır penceresi açılır. Bu pencerede bir çok fonksiyon (işlev) olduğunu göreceksiniz. İşte bu fonksiyonlar Excel Çalışma Sayfası'nda bulunan hücrelerde aktif olarak kullanılır. Buradaki fonksiyonlar Excel'i kurarken otomatik olarak gelmektedir.

Fonksiyonlar, Excel'in vazgeçilmez unsurlarıdır. Excel'i sadece tablolama işlemi olarak gören kullanıcılar bile, mutlaka kullanmak zorundadırlar.

Fonksiyonların kullanımına basit bir örnek verdikten sonra, bu sayfanın asıl konusu olan Kullanıcı Tanımlı Fonksiyonlar konusuna geçeceğiz. Kullanıcı Tanımlı Fonksiyo'nun ne olduğunu aşağıdaki örnekten sonra bulacaksınız.

Yerleşik Fonksiyonlar (Yerleşik İşlevler)
Excel ile birlikte gelen fonksiyonların kullanıldığı basit örnekler.

Örnek : Aşağıdaki tabloyu inceleyin.



Tutar kolonunda sonuçların yerine formülleri verdik. Burada dikkat edilmesi gereken üç hücre var. D11, D9 ve D10 hücreleridir. Şimdi bunları açıklayalım.

D11 Hücresi:  D9 hücresinde bulunan Tutar'ların Toplam'ını ve KDV Tutarı'nı toplar. Sizin de fark ettiğiniz gibi sadece aritmetiksel işleç olan '+' işleci kullanarak toplama yapılmıştır. Bunun için herhangi bir fonksiyon kullanılmamıştır.

D9 Hücresi: Bu hücrede de Tutar'lar toplanmıştır. İkiden fazla toplanacak hücre olduğundan, bu hücrede bir Yerleşik Fonksiyon olan TOPLA fonksiyonu kullanılmıştır.  

D10 hücresi: Bu hücrede de herhangi bir fonksiyon kullanılmamıştır. Fakat iki/ikiden çok işleç kullanılmıştır. Burada kullanılan tip işleç hareketlerinin sürekli kullanılacağını düşünecek olursak, bu tür bir formülü sürekli yazmaktansa fonksiyon kullanmak daha doğru olacaktır. Fakat bu tür bir fonksiyon Yerleşik Fonksiyonlarda bulunmayabilir. İşte burada devreye siz giriyorsunuz ve hemen kendinize bir Kullanıcı Tanımlı hazırlıyorsunuz. :-)) Tamam, ama nasıl hazırlayacağım diyorsanız, bundan sonraki bölümleri dikkatli inceleyin ve defalarca uygulayın. Defalarca sözünün ölçüsü ise en az olayları ezberleyene kadar.

Kullanıcı Tanımlı Fonksiyonlar
Excel'de bir çok Yerleşik Fonksiyon mevcuttur. Fakat bunlar bazen yapmak istediğiniz işi görmeyebilirler. Belki de siz kendinize özel bir program hazırlamak istiyorsunuz ve burada kullanmak istediğiniz bir fonksiyon Excel'de yok. O halde kendi Fonksiyonunuzu hazırlamalı ve Excel Çalışma Sayfasında kullanılabilir hale getirmelisiniz. İşte bu hazırladığınız fonksiyona Kullanıcı Tanımlı Fonksiyon denmektedir.

Ama bu o kadar da kolay bir iş değil. Öncelikle VBA kodlamanın ne olduğunu ve nasıl yapıldığını bilmelisiniz. Eğer bu sayfada iseniz ve bu satırları merakla okuyorsanız, demek ki bu konu hakkında biraz da olsa bilginiz var.

Şimdi kullanıcı tanımlı fonksiyon nasıl hazırlanır, bunun ön bilgilerini verelim.

... Öncelikle şunu bilmelisiniz ki, bu tür fonksiyonları hangi Çalışma kitabında hazırlayıp kaydetmişseniz, ancak o Çalışma Kitabında kullanabilirsiniz.

... Bir çalışma kitabı açın ve bu kitabı kaydedin.
... Daha sonra VBA Kod sayfasına geçin.
... Yeni bir Modül açın.
... Yazmak istediğiniz fonksiyonu

Function fonksiyonun_adı (fonksiyonda kullanılan değişkenler)
   ...........
   ...........
   ...........
End Function
   
   bloğu arasına yazın.
... Hazırladığınız fonksiyonu kaydedin. (Bir çok kullanıcı bu işlemi yapmadan çalıştırmaya çalışıyor. Tabi ki, yapamıyor, önce kayıt işlemi yapılmalı, daha sonra çalıştırılacak)
... Excel Çalışma Sayfasına geçin ve fonksiyonunuzu kullanmaya başlayın.

Aşağıda sizin için basit bir örnek olsun diye böyle bir Kullanıcı Tanımlı Fonksiyon hazırladık. Siz de bunu uygulamaya geçerek işe başlayabilirsiniz.

Örnek 1:

Amaç: Öğrencinin yıl sonu not hesabı

Veriler: 1 vize ve 1 final notu var. Vize notunun %30'u final notunun ise %40'ı yıl sonu notuna etki edecek.

Kullanılacak Formül: 0.3*Vize + 0.7*Final

Modül sayfasına yazılacak Kod:

Function basari(vize As Integer, final As Integer)
   basari = 0.3 * vize + 0.7 * final
End Function

Şimdi, her türlü önleme karşı yazdığınız bu kodu kaydedin. Bazı arkadaşlarımızın, bizim yukarıda yazdığımız kodu hemen alıp modül sayfasına kopyaladıklarını görüyor gibiyim. Tamam, bu da olur ama yazmak, kopyalamakla kıyaslanamayacak kadar iyidir. Eğer hep böyle kopyalama işine alışırsanız, VBA Kod sayfasındaki olayları anlamakta güçlük çekersiniz. Bu basit bir uyarıydı. Tabi ki bu arada siz Çalışma sayfasına geçtiniz. Bundan sonra yapılacak işlem çok kolay. Aşağıdaki şekilde görüldüğü gibi, herhangi bir hücreye gidin ve =basari(50;60) yazın ve Enter tuşuna basın. Sonucu göreceksiniz.



Yerleşik Fonksiyonlarda olduğu gibi, Kullanıcı Tanımlı Fonksiyonlarda da, ister doğrudan değişkenlere değer vererek yazarsınız, isterseniz değişken yerine değerin bulunduğu hücre adresini yazarsınız. Burada size yapabileceğimiz tavsiye, tabi ki, ikincisi olan hücre adresini yazmanızdır. Bu değişkenler, adı üzerinde olduğu gibi değişkendir. Sürekli değiştiğinde formülün içine girip yazmanız zor olacaktır. Yine de seçim size kalmış.



Yukarıda verdiğimiz örneği biraz daha geliştirelim.

saç dökülmesi saç bakımı ayakkabı hediyelik kozmetik zayıflama web tasarım cinsel sağlık
Örnek 2:
Bu defa iki vize notu olsun ve yıl sonu başarı notuna bu vizelerin ortalaması eklensin.

Function basari(vize1 As Integer, vize2 As Integer, final As Integer)
  vizeort = (vize1 + vize2) / 2
  basari = 0.3 * vizeort + 0.7 * final
End Function

Destek
M.ÖZTÜRK - Y.KARAMAN
Bu siteyi, "Hayatını çocuklarının Ahlâklı ve Dürüst yetişmesi için harcamış olan Cefakar ve Fedakar, Canım ANNEM'e adadım."
Copyright © 1998-2011 M. Temel Korkmaz - Tüm hakları saklıdır.