• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

excell not hesapla

Katılım
23 Mart 2007
Mesajlar
60
Excel Vers. ve Dili
dil turkçe
ben not hesaplamak istiyorum ancak notlar bir,iki,üç,dört,beş diye yazıyla yazacak. bu formül acil lazım şimdiden teşekkürler.
bu arada yukarıda 1 yazarsa alta bir yazacak, 2 yazarsa alta iki yazacak. yani rakamları yazıya cevirecek.dosya ekleyeyim.
 
yanıt

yazı yazmasını istediğiniz hücreye de =yaz(...) formülünü yazınca rakamı yazıyla yazacaktır

Function yaz$(sayi)
Dim b$(9)
Dim y$(9)
Dim m$(4)
Dim v(15)
Dim c(3)

b$(0) = ""
b$(1) = "Bir"
b$(2) = "İki"
b$(3) = "Üç"
b$(4) = "Dört"
b$(5) = "Beş"
b$(6) = "Altı"
b$(7) = "Yedi"
b$(8) = "Sekiz"
b$(9) = "Dokuz"

y$(0) = ""
y$(1) = "On"
y$(2) = "Yirmi"
y$(3) = "Otuz"
y$(4) = "Kırk"
y$(5) = "Elli"
y$(6) = "Altmış"
y$(7) = "Yetmiş"
y$(8) = "Seksen"
y$(9) = "Doksan"

m$(0) = "Trilyon"
m$(1) = "Milyar"
m$(2) = "Milyon"
m$(3) = "Bin"
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

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
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$ = "BirBin") Then e$ = "Bin"
s$ = s$ + e$
Next x

If s$ = "" Then s$ = "Sıfır"
If pozitif = 0 Then s$ = "Eksi" + s$

yaz$ = s$
GoTo tamam
hata: yaz$ = "Hata"
tamam:
End Function
 
evet makro bilince g&#252;zel ancak makro bilmeyince benimgibi olmuyo i&#351;te bunu ba&#351;ka bi dosyaya uygulayam&#305;yorum. form&#252;l kullanarak yapabilir miyiz?
 
C7 h&#252;crenize

=ARA(C6;{1;2;3;4;5};{"bir";"iki";"&#252;&#231;";"d&#246;rt";"be&#351;"})

yaz&#305;p sa&#287;a do&#287;ru &#231;ekiniz.
 
Selamlar,
Sn Ali'nin yazdığı formülü şöyle de yapabilirsiniz.
C6 boş olduğu zaman C7 de boş görünsün diye.

=EĞER(C6>0;ARA(C6;{1;2;3;4;5};{"bir";"iki";"üç";"dört";"beş"});"")
 
Say&#305;n lrdofstn

C7&#8217; e =ELEMAN(C6;"bir";"iki";"&#252;&#231;";"d&#246;rt";"be&#351;")
C9' a =ELEMAN(C8;"bir";"iki";"&#252;&#231;";"d&#246;rt";"be&#351;") yaz&#305;p sa&#287;a do&#287;ru kopyalar m&#305;s&#305;n&#305;z.(Dolu h&#252;crelere)
 
Geri
Üst