Excelde rakamı yazıya dönüştürme nasıl yapılır?

excel kullanan arkadaslarımız bazen hesaplama sonunda cıkan rakamları yazıyla otomatik yazmasını isteyebilir. bunu nasıl yapabiliriz ilk olarak bunu sizlere acıklayacağım.

İlk olarak sizlere excelde bunu yapabilmek için makro kullanmalısınız demem gerekiyor. makro kısa özetlemem gerekirse VBA kısaltmasını bazen görüyorsunuzdur. uzatılmışı “Visual Basic For Application” yani Visual Basic ile programala yapmak demektir. Visual Basic bir programlama dilidir. programlama dili hakkında az cok bilgiye sahip olanlar zaten olayı cok hızlı kavrayacaklardır. ben size fonksiyonunun kodunu ve nasıl ekleyeceğinizi vereceğim zaten hemen kavrayacaksınız.

Fonksiyon nedir. excelden örnek vermek gerekirse =topla() bir fonksiyondur bizde topla() gibi bir fonksiyon yapacağız

Alt+11 e basarak excel acıkken asağıdaki modül bölümünü acınız.

Function ParaCevir(Para, Optional PBirim = "Lira", Optional KBirim = "Kuruş")
 Dim ParaStr As String
 Dim Lira As String, Kurus As String

 If Not IsNumeric(Para) Then
 ParaCevir = "GİRİLEN DEĞER SAYI DEĞİL!"
 Exit Function
 End If

 ParaStr = Format(Abs(Para), "0.00")

 Lira = Left(ParaStr, Len(ParaStr) - 3)
 Kurus = Right(ParaStr, 2)

 ParaCevir = IIf(Para < 0, "Eksi ", "") & Cevir(Lira) & " " & PBirim & " " & _
 IIf(Val(Kurus) <> 0, Cevir(Kurus) & " " & KBirim & " ", "")
End Function
Private Function Cevir(SayiStr As String) As String
 Dim Rakam(15)
 Dim c(3), Sonuc, e

 Birler = Array("", "bir", "iki", "üç", "dört", "beş", "altı", "yedi", "sekiz", "dokuz")
 Onlar = Array("", "on", "yirmi", "otuz", "kırk", "elli", "altmış", "yetmiş", "seksen", "doksan")
 Binler = Array("trilyon", "milyar", "milyon", "bin", "")

 SayiStr = String(15 - Len(SayiStr), "0") + SayiStr

 For i = 1 To 15
 Rakam(i) = Val(Mid$(SayiStr, i, 1))
 Next i

 Sonuc = ""
 For i = 0 To 4
 c(1) = Rakam(i * 3 + 1)
 c(2) = Rakam(i * 3 + 2)
 c(3) = Rakam(i * 3 + 3)
 If c(1) = 0 Then
 e = ""
 ElseIf c(1) = 1 Then
 e = "yüz"
 Else
 e = Birler(c(1)) + "yüz"
 End If
 e = e + Onlar(c(2)) + Birler(c(3))
 If e <> "" Then e = e + Binler(i)
 If (i = 3) And (e = "birbin") Then e = "bin"
 Sonuc = Sonuc + e
 Next i
 If Sonuc = "" Then Sonuc = "Sıfır"

 Cevir = UCase(Mid(Sonuc, 1, 1)) + Mid(Sonuc, 2, Len(Sonuc) - 1)
End Function

yukarıda ki kodu kopyalayıp yapıştırın ve ctrl s ile kaydedin

normal = ile fonksiyonu cağırın;

sonuc bu kadar

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir