Birden fazla sonuç üreten özel fonksiyon oluşturmak için yapılması gerekenler:
Diyelim ki bir sayı yazılan metin kutumuz olsun ve o sayının karesini ve karekökünü hesaplayan bir fonksiyon oluşturalım. (Gerçi karekökü ve kareyi hesaplamak için hazır fonksiyonlar var ama anlaşılabilecek bir örnek olsun istedim.)
Önce fonksiyonu oluşturacağımız bir modül açalım. deneme adında Public bir fonksiyon oluşturalım.
Sonra genel bildirim alanına (en üste) fonksiyonumuzda oluşturacağımız sonuçların türlerini belirtelim:
Sonra fonksiyonumuzu oluşturalım:
Dikkat ederseniz daha önce bildirdiğimiz türlerin gurubuna geri adını vermiştik. Fonksiyonun çıkış bildirimi de geri.
Fonksiyonun nasıl oluşturulacağı örnekte belli.
Şimdi gelelim bu sonuçların nasıl çağrılacağına:
Form üstünde üç metin kutusu oluşturalım ve adlarına txtSayi, txtKare ve txtKok olsun. txtSayi metin kutusuna bir sayı girilince bu sayının karesini ve karekökünü diğer metin kutularında görüntülemek için formun kod yazma alnına şu kodları ekleyelim:
Burada dikkat edilecek nokta oluşturulacak fonksiyonun, Public türünde olması.
İyi çalışmalar:hey:
Diyelim ki bir sayı yazılan metin kutumuz olsun ve o sayının karesini ve karekökünü hesaplayan bir fonksiyon oluşturalım. (Gerçi karekökü ve kareyi hesaplamak için hazır fonksiyonlar var ama anlaşılabilecek bir örnek olsun istedim.)
Önce fonksiyonu oluşturacağımız bir modül açalım. deneme adında Public bir fonksiyon oluşturalım.
Sonra genel bildirim alanına (en üste) fonksiyonumuzda oluşturacağımız sonuçların türlerini belirtelim:
Kod:
Public Type geri
kare As Double
kok As Double
End Type
Kod:
Public Function deneme(Sayi As Double) As geri
deneme.kok = Sqr(Sayi)
deneme.kare = Sayi * Sayi
End Function
Fonksiyonun nasıl oluşturulacağı örnekte belli.
Şimdi gelelim bu sonuçların nasıl çağrılacağına:
Form üstünde üç metin kutusu oluşturalım ve adlarına txtSayi, txtKare ve txtKok olsun. txtSayi metin kutusuna bir sayı girilince bu sayının karesini ve karekökünü diğer metin kutularında görüntülemek için formun kod yazma alnına şu kodları ekleyelim:
Kod:
Private Sub txtSayi_AfterUpdate()
Me.txtKare = deneme(Me.txtSayi).kare
Me.txtKok = deneme(Me.txtSayi).kok
End Sub
İyi çalışmalar:hey: