Excel de Sayıyı Metne Çevirme Acil Yardım

Bu konuyu okuyanlar

sabus

Öğrenci
Katılım
16 Ocak 2010
Mesajlar
5
Reaksiyon puanı
0
Puanları
0
Öncelikle merhabalar arkadaşlar.Hoca bugün excel de bir soru sordu.Evde ne kadar uğraşsamda yapamadım.Siz bana yardımcı olursanız çok sevinirim.Soru şu; Excel de bir hücreye rakamla yazdığımız
bir sayıyı metine çevirmek Office 2007 kullanıyorum.Yardım ederseniz sevinirim
 

seppuku

Öğrenci
Katılım
21 Mayıs 2008
Mesajlar
42
Reaksiyon puanı
0
Puanları
6
Function yaziyla(sayi)On Error Resume Next
Dim deg(3), s(3), deger(2)
a = Array("", "bir", "iki", "üç", "dört", "beş", "altı", "yedi", "sekiz", "dokuz")
b = Array("", "on", "yirmi", "otuz", "kırk", "elli", "altmış", "yetmiş", "seksen", "doksan")
c = Array("", "", "bin", "milyon", "milyar", "trilyon")
deger(1) = Int(sayi)
deger(2) = Round(sayi - deger(1), 2) * 100
If sayi = 0 Then son = "sıfır"
For g = 1 To 2
yazi = deger(g)
For d = 1 To Len(yazi) Step 3
e = e + 1
deg(1) = Mid(yazi, Len(yazi) - d - 1, 1)
deg(2) = Mid(yazi, Len(yazi) - d, 1)
deg(3) = Mid(yazi, Len(yazi) - d + 1, 1)
If deg(1) <> 0 Then s(1) = Replace(a(deg(1)) & "yüz", "biryüz", "yüz")
s(2) = b(deg(2))
s(3) = a(deg(3)) & c(e)
If deg(1) + deg(2) + deg(3) = 0 Then s(3) = ""
son = s(1) & s(2) & s(3) & son
If Left(son, 6) = "birbin" Then son = Replace(son, "birbin", "bin")
For f = 1 To 3
deg(f) = ""
s(f) = ""
Next: Next
If g = 1 And deger(1) <> 0 Then ytl = son & " lira "
If g = 2 And deger(2) <> 0 Then ykr = " " & son & " kuruş"
son = ""
e = 0
Next
yaziyla = ytl & ykr
End Function

makro atayarak yapabilirsin
 

sabus

Öğrenci
Katılım
16 Ocak 2010
Mesajlar
5
Reaksiyon puanı
0
Puanları
0
Kardeş makrosuz yapılmıyo mu başka bi yolu daha yok mu hoca bunu kabul etmiyoda
 

sabus

Öğrenci
Katılım
16 Ocak 2010
Mesajlar
5
Reaksiyon puanı
0
Puanları
0
tamam teşekkürler.Başka yolu bilen varsa paylaşırsa sevinirim.
 

sabus

Öğrenci
Katılım
16 Ocak 2010
Mesajlar
5
Reaksiyon puanı
0
Puanları
0
Kardeş araştırdım da hep makrolu çıktı bana makrosuz lazım.O yüzden açtım konuyu
 
Üst