Skip to main content

AccessTr.neT


Sayıyı Yazıya Çevirme

Sayıyı Yazıya Çevirme

#7
Ayrıntılı bir anlatamım yapacam birisi yok mu ?
Cevapla
#8
hocam teşekkürler
visul basic 2010'te de oluyor.
sayıların başına boşluk koyarsanız boşluklu yazabilir.

--------------------------------------------------
'1 text 1 label 1 de buton
Public Class Form1

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load


End Sub
Public Function SayiyiYaziyaCevir(ByVal Sayi As String, Optional ByVal Seviye As Integer = 0) As String
On Error Resume Next
Dim Ek As String, Donen As String
Ek = " "

Donen = Choose((Mid(Sayi, Len(Sayi) - (Seviye * 3) - 2, 1)) + 1, "", " Yüz", " İki Yüz", " Üç Yüz", " Dört Yüz", " Beş Yüz", " Altı Yüz", " Yedi Yüz", " Sekiz Yüz", " Dokuz Yüz")
Donen = Donen & Choose((Mid(Sayi, Len(Sayi) - (Seviye * 3) - 1, 1)) + 1, "", " On", " Yirmi", " Otuz", " Kırk", " Elli", " Altmış", " Yetmiş", " Seksen", " Doksan")
Donen = Donen & Choose((Mid(Sayi, Len(Sayi) - (Seviye * 3), 1)) + 1, "", " Bir", " İki", " Üç", " Dört", " Beş", " Altı", " Yedi", " Sekiz", " Dokuz")

If Donen <> "" Then Ek = Choose(Seviye + 1, "", " Bin", " Milyon", " Milyar", " Trilyon", " Katrilyon", "Katrilyar") 'Bildiğiniz sayıyla sınırlı
If Donen = " Bir" And Seviye = 1 Then Donen = "" 'BirBin çevrimini iptal etmek için

If Seviye * 3 + 3 < Len(Sayi) Then
Donen = SayiyiYaziyaCevir(Sayi, Seviye + 1) & Donen 'Sayinin cevrimi bitmemişse tekrar çağır
End If

SayiyiYaziyaCevir = Donen & Ek
End Function


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Label1.Text = SayiyiYaziyaCevir(TextBox1.Text)
End Sub

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged

End Sub
End Class
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da
Task