Başlıklar ve İçerik
Excel’de Kendi Fonksiyonumu Nasıl Yazabilirim?
Excel’de kendi fonksiyonlarımızı oluşturup kullanabiliriz. Bunun gibi kullanıcının kendisinin oluşturduğu fonksiyonlara UDF yani User Defined Function adı verilmektedir. UDF’lerin nasıl oluşturulduğunu buradaki microsoft’un sayfasından da inceleyebilirsiniz.
Bu sayfamızda Sizin işinize yarayacağını düşündüğümüz UDF’leri bir araya getirip tek bir sayfada istifadenize sunmayı amaçlıyoruz.
Excel’de UDF Nasıl Tanımlanır?
UDF Fonksiyonları tanımlamak için aşağıdaki adımları takip edebilirsiniz;
- ALT+F11 kısayolunu kullanarak VBA penceresine gidiniz.
- Insert sekmesinden “Module” seçeneğini seçiniz.
- Aşağıdaki kodlardan istediğinizi yapıştırınız.
- Dosyanızı Makro İçerebilen Excel Çalışma Kitabı (*.xlsm) formatında kaydetmelisiniz.
Excel VBA de Hücredeki Yorumu Çıkaran Fonksiyon
Bu fonksiyon ile herhangi bir hücreye atanan yorum veya açıklamayı bir hücrenin içerisine yazdırabilrisiniz.
Kullanım:
“=YorumMetni(A1)” şeklinde kullanarak A1 hücresine yazılan yorumu hücreye yazdırabilrisiniz.
Function YorumMetni(hcr As Range) As String
YorumMetni = hcr.Comment.text
End Function
Excel VBA de Sayfa Adını Getiren Fonksiyon
Bu fonksiyon ile sayfanın adını hücreye yazdıabilrisiniz.
Kullanım:
“=SayfaAdi()” şeklinde kullanarak istediğiniz hücreye sayfanın adını yazdırabilrisiniz.
Function SayfaAdi() As String
Application.Volatile
SayfaAdi = Application.Caller.Worksheet.Name
End Function
Excel VBA de Bir Metinde Kaç Kelime Olduğunu Hesaplayan Fonksiyon
Bu fonksiyon ile herhangi bir hücredeki metinde yer alan kelime sayısını bulabilirsiniz.
Kullanım:
“=KelimeSayisi(A1)” şeklinde kullanarak A1 hücresindeki metindeki kelime sayısını elde edebilirsiniz.
Function KelimeSayisi(ByVal Metin As String) As Long
Dim KelimeArray() As String
KelimeArray = Split(Trim(Metin), " ")
KelimeSayisi = UBound(KelimeArray) + 1
End Function
Excel VBA de Türkçe Karakterleri İngilizceye Çeviren Fonksiyon
Bu fonksiyon ile herhangi bir hücredeki metinde yer alan Türkçe karakterleri İngilizce karakterlerine çevirip Büyük Harfle yazdırabilirsiniz.
Kullanım:
“=TurkceToIngilizce(A1)” şeklinde kullanarak A1 hücresindeki metindeki kelimelerin hepsini büyükharfli ve İngilizce karakterli yapabilirsiniz..
Function TurkceToIngilizce(ByVal text As String) As String
Dim turkceChars As String
Dim ingilizceChars As String
Dim i As Integer
turkceChars = "çÇğĞıİöÖşŞüÜ"
ingilizceChars = "cCgGiIoOsSuU"
For i = 1 To Len(turkceChars)
text = Replace(text, Mid(turkceChars, i, 1), Mid(ingilizceChars, i, 1))
Next i
TurkceToIngilizce = UCase(text)
End Function
Excel VBA de Bir Hücrenin Arkaplan Renginin HEX Kodunu Veren Fonksiyon
Bu fonksiyon ile herhangi bir hücrenin arkaplan renginin HEX kodunu verir.
Kullanım:
“=HexCodeRGB(A1)” şeklinde kullanarak A1 hücresinin arkaplan renginin HEX kodunu elde edebilirsiniz.
Public Function HexCodeRGB(cell As Range) As String
HexCodeBGR = Right("000000" & Hex(cell.Interior.Color), 6)
HexCodeRGB = "#" & Right(HexCodeBGR, 2) & Mid(HexCodeBGR, 3, 2) & Left(HexCodeBGR, 2)
End Function
Şablonlarımıza da Göz atmak isterseniz Aşağıdaki linkleri kullanabilirsiniz;