Skip to main content

AccessTr.neT


usd cinsinden rakamı yazıya cevirmek

usd cinsinden rakamı yazıya cevirmek

Çözüldü #5
Parametre olarak TR/EN/DE olabilir. almanca için kesin doğrudur diyemem.

Kullanimi:
Me.Yalniz= yazt("12345,23" , "USD" , "EN")
veya
me.Rakam=12345,23
me.Yalniz=yazt(me.Rakam , "USD" , "DE")

Sonuç:
ONİKİBİNÜÇYÜZKIRKBEŞ USD YİRMİÜÇ SENT
TENTWOTHOUSANDTHREEHUNDREDFORTYFIVE USD TWENTYTHREE SENT
ZEHNZWEITAUSENDDREIHUNDERTVIERZIGFÜNF USD ZWANZIGDREI SENT


Not:Ondalık işaretine dikkat ediniz. bazı bilgisayarlarda nokta bazılarında virgüldür.


Function yazt(Sayi, Doviz, Dil)
'Sayi = Rakamınız
'Doviz = USD/TL/GBP
'Dil = TR/EN/DE
Dim B$(9)
Dim Y$(9)
Dim m$(4)
Dim v(15)
Dim C(3)
If Dil = "TR" Then GoTo TR
If Dil = "EN" Then GoTo EN
If Dil = "DE" Then GoTo DE

TR:
B$(0) = ""
B$(1) = "BİR"
B$(2) = "İKİ"
B$(3) = "ÜÇ"
B$(4) = "DÖRT"
B$(5) = "BEŞ"
B$(6) = "ALTI"
B$(7) = "YEDİ"
B$(8) = "SEKİZ"
B$(9) = "DOKUZ"

Y$(0) = ""
Y$(1) = "ON"
Y$(2) = "YİRMİ"
Y$(3) = "OTUZ"
Y$(4) = "KIRK"
Y$(5) = "ELLİ"
Y$(6) = "ALTMIŞ"
Y$(7) = "YETMİŞ"
Y$(8) = "SEKSEN"
Y$(9) = "DOKSAN"

m$(0) = "TRİLYON"
m$(1) = "MİLYAR"
m$(2) = "MİLYON"
m$(3) = "BİN"
m$(4) = ""
GoTo Devami

EN:
B$(0) = ""
B$(1) = "ONE"
B$(2) = "TWO"
B$(3) = "THREE"
B$(4) = "FOUR"
B$(5) = "FIVE"
B$(6) = "SIX"
B$(7) = "SEVEN"
B$(8) = "EIGHT"
B$(9) = "NINE"

Y$(0) = ""
Y$(1) = "TEN"
Y$(2) = "TWENTY"
Y$(3) = "THIRTY"
Y$(4) = "FORTY"
Y$(5) = "FIFTY"
Y$(6) = "SIXTY"
Y$(7) = "SEVENTY"
Y$(8) = "EIGHTY"
Y$(9) = "NINETY"

m$(0) = "TRILLION"
m$(1) = "BILLION"
m$(2) = "MILLION"
m$(3) = "THOUSAND"
m$(4) = ""
GoTo Devami

DE:
B$(0) = ""
B$(1) = "EIN"
B$(2) = "ZWEI"
B$(3) = "DREI"
B$(4) = "VIER"
B$(5) = "FÜNF"
B$(6) = "SECHS"
B$(7) = "SIEBEN"
B$(8) = "ACHT"
B$(9) = "NEUN"

Y$(0) = ""
Y$(1) = "ZEHN"
Y$(2) = "ZWANZIG"
Y$(3) = "DREIßIG"
Y$(4) = "VIERZIG"
Y$(5) = "FÜNFZIG"
Y$(6) = "SECHZIG"
Y$(7) = "SIEBZIG"
Y$(8) = "ACHTZIG"
Y$(9) = "NEUNZIG"

m$(0) = "BILLION"
m$(1) = "MILLIARDE"
m$(2) = "MILLION"
m$(3) = "TAUSEND"
m$(4) = ""
GoTo Devami

Devami:
A$ = Str(Int(Sayi))

If Left$(A$, 1) = " " Then pozitif = 1 Else pozitif = 0
A$ = Right$(A$, Len(A$) - 1)
Kurus = (Sayi - Val(A$)) * 100
Kurus = Format(Kurus, "00")

For X = 1 To Len(A$)
If (Asc(Mid$(A$, X, 1)) > Asc("9")) Or (Asc(Mid$(A$, X, 1)) < Asc("0")) Then GoTo Hata
Next X

If Len(A$) > 15 Then GoTo Hata
A$ = String(15 - Len(A$), "0") + A$

For X = 1 To 15
v(X) = Val(Mid$(A$, X, 1))
Next X

s$ = ""
For X = 0 To 4
C(1) = v((X * 3) + 1)
C(2) = v((X * 3) + 2)
C(3) = v((X * 3) + 3)
If C(1) = 0 Then
e$ = ""
ElseIf C(1) = 1 Then
If Dil = "TR" Then e$ = "YÜZ"
If Dil = "EN" Then e$ = "HUNDRED"
If Dil = "DE" Then e$ = "HUNDERT"
Else
If Dil = "TR" Then e$ = B$(C(1)) + "YÜZ"
If Dil = "EN" Then e$ = B$(C(1)) + "HUNDRED"
If Dil = "DE" Then e$ = B$(C(1)) + "HUNDERT"
End If
e$ = e$ + Y$(C(2)) + B$(C(3))
If e$ <> "" Then e$ = e$ + m$(X)

If Dil = "TR" Then
If (X = 3) And (e$ = "BİRBİN") Then e$ = "BİN"
End If
If Dil = "EN" Then
If (X = 3) And (e$ = "THOUSAND") Then e$ = "THOUSAND"
End If
If Dil = "DE" Then
If (X = 3) And (e$ = "TAUSEND") Then e$ = "TAUSEND"
End If

s$ = s$ + e$
Next X

If Dil = "TR" Then
If s$ = "" Then s$ = "SIFIR"
If pozitif = 0 Then s$ = "EKSİ" + s$
End If
If Dil = "EN" Then
If s$ = "" Then s$ = "ZERO"
If pozitif = 0 Then s$ = "MINUS" + s$
End If
If Dil = "DE" Then
If s$ = "" Then s$ = "NULL"
If pozitif = 0 Then s$ = "MINUS" + s$
End If

KY = "%"
If Doviz = "YTL" Or Doviz = "TL" Then KY = "KURUS"
If Doviz = "USD" Or Doviz = "EUR" Then KY = "SENT"
If Doviz = "GBP" Then KY = "FENIK"


If Val(Kurus) <> 0 Then
Ke$ = Y$(Left(Kurus, 1)) + B$(Right(Kurus, 1))
yazt = s$ & " " & Doviz & " " & Ke$ & " " & KY
GoTo Tamam
Else
yazt = s$ & " " & Doviz
GoTo Tamam
End If

GoTo Tamam
Hata: yazt = "Hata!!!"
Tamam:
End Function

Murat YANDEMİR ( PyramiD YAZILIM Uluslar Arası Nakliye Programları )
Bilgisayar Programcısı (1989'dan beri)

+rep Yollar biter Access bitmez. +rep
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da

Bu Konudaki Yorumlar
usd cinsinden rakamı yazıya cevirmek - Yazar: habatay - 13/09/2012, 14:51
Cvp: usd cinsinden rakamı yazıya cevirmek - Yazar: Yandemir - 14/09/2012, 01:06
Task