alpersen
18-11-2004, 14:27
Aþaðýda yeralan macro formülünü kullanabilmem için nereye save etmem gerekiyor. Ya da macroyu çalýþtýrabilmem için yapmam gereken aþamalar hakkýnda yardýmcý olursanýz sevinirim.
Yardýmlarýnýz için þimdiden teþekkürler....
Function yaz$(sayi)
Dim b$(9)
Dim y$(9)
Dim m$(4)
Dim v$(15)
Dim c$(3)
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) = "TRILYON"
m$(1) = "MÝLYAR"
m$(2) = "MÝLYON"
m$(3) = "BÝN"
m$(4) = ""
a$ = Str(sayi)
If Left$(a$, 1) = "" Then pozitif = 1 Else pozitif = 0
a$ = Right$(a$, Len(a$) - 1)
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
a$ = ""
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
e$ = "YÜZ"
Else
e$ = b$(c(1)) + "YÜZ"
End If
e$ = e$ + y$(c(2)) + b$(c(3))
If e$ <> "" Then e$ = e$ + m$(x)
If (x = 3) And (e$ = "BÝRBÝN") Then e$ = "BÝN"
s$ = s$ + e$
Next x
If s$ = "" Then s$ = "SIFIR"
If pozitif = 0 Then s$ = "" + s$
yaz$ = s$
GoTo tamam
hata: yaz$ = "hata"
tamam:
End Function
EDÝT:Kodlar Kod görünümünde Düzenlenmiþtir.Mod.
Yardýmlarýnýz için þimdiden teþekkürler....
Function yaz$(sayi)
Dim b$(9)
Dim y$(9)
Dim m$(4)
Dim v$(15)
Dim c$(3)
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) = "TRILYON"
m$(1) = "MÝLYAR"
m$(2) = "MÝLYON"
m$(3) = "BÝN"
m$(4) = ""
a$ = Str(sayi)
If Left$(a$, 1) = "" Then pozitif = 1 Else pozitif = 0
a$ = Right$(a$, Len(a$) - 1)
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
a$ = ""
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
e$ = "YÜZ"
Else
e$ = b$(c(1)) + "YÜZ"
End If
e$ = e$ + y$(c(2)) + b$(c(3))
If e$ <> "" Then e$ = e$ + m$(x)
If (x = 3) And (e$ = "BÝRBÝN") Then e$ = "BÝN"
s$ = s$ + e$
Next x
If s$ = "" Then s$ = "SIFIR"
If pozitif = 0 Then s$ = "" + s$
yaz$ = s$
GoTo tamam
hata: yaz$ = "hata"
tamam:
End Function
EDÝT:Kodlar Kod görünümünde Düzenlenmiþtir.Mod.