Fonksiyon Prosedürleri

Fonksiyon prosedürleri bir değer döndürebilir. Bu sayede aynı excel fonksiyonları gibi (düşeyara, eğersay…vb) kendi fonksiyonlarınızı yazabilirsiniz.

Notlar

(Application.Volatile True) kodunu kullanarak hücredeki bir değer her değiştirildiğinde Excel’i yeniden hesaplama yapmaya zorlayabilirsiniz.

CTRL + ALT + F9 tüm fonksiyon prosedürlerini yeniden hesaplamaya zorlar.

Fonksiyon Prosedürleri Örnekleri

Aşağıdaki makro kodu güncel yıldan seçili yılı çıkarır. Değişken değeri tarihtir. Geri döndürülen değer Long’tur.

Public Function makro_yil(Tarih As Date) As Long 

makro_yil = Year(Date) - Year(Tarih) 

End Function Code language: VB.NET (vbnet)
Fonksiyon prosedürleri

Aşağıdaki makro kodu güncel yıldan seçili yılı çıkarır ve isteğe bağlı olarak yazı eklenebilir. Formül yazı içerebileceği için geri döndürülen değer Variant’dır.

Public Function makro_yil2(Tarih As Date, Optional Yazi As String) As Variant 

If VBA.IsMissing(Yazi) Then
     makro_yil2 = Year(Date) - Year(Tarih) 
Else
     makro_yil2 = Year(Date) - Year(Tarih) & " " & Yazi 
End If 

End Function Code language: VB.NET (vbnet)
Fonksiyon prosedürleri

Aşağıdaki makro kodu güncel tarihten seçili tarihi çıkarır, kalan ay ve yıl sayısını gösterir. Formül yazı içerdiği için geri döndürülen değer String’dir.

Function makro_yas_hesabi(Tarih As Date) As String 

Dim aylar As Long 
Dim yillar As Long 

aylar = Month(Date) - Month(Tarih) 
yillar = Year(Date) - Year(Tarih) 

If aylar < 0 Then
     yillar = yillar - 1
     aylar = 12 - VBA.Abs(aylar) 
End If 

makro_yas_hesabi = yillar & " yıl, " & aylar & " ay" 

End FunctionCode language: VB.NET (vbnet)
Fonksiyon prosedürleri

İlgili Makaleler

Kaynak


Yayımlandı

kategorisi

yazarı:

Etiketler: