usd cinsinden rakamı yazıya cevirmek

13/09/2012, 14:51

habatay

USD olarak fatura kesiyorum bunu yazıya nasıl çevirebilirim ?
YTL olrak var ancak USD gerekli teşekkürler
13/09/2012, 15:10

raham

Rakamları yazıya çevirmek için muhtemelen bir modül kullanıyorsun. Bununda bir çok örneği var, hangisini kullandığınızı bilemiyorum.
Bu konuyu geçen hafta açmıştım, benim bir çalışmam vardı. (Power hocamın katkısıyla)
Cevaplanmış sorulara bakarsan benim örneğimi kullanabilirsin.
http://accesstr.net/konu-fatura-programi...orunu.html
13/09/2012, 15:16

habatay

evet istediğim bu ancak açıklamam eksik oldu benim istediğim usd yi yazıya ingilizce olarak çevirmek.
13/09/2012, 15:56

raham

Bir sorum olacak.

Aynı formda hem İngilizce temde Türkçe olacak mı?
14/09/2012, 01:06

Yandemir

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

27/10/2012, 07:32

benremix

Sn Habatay size emek verilip cevap verilmiş. Lütfen geri bildirimde bulunmayı unutmayalım.

Saygılar...