Merhaba. İstediğim herhangi rakam olabilir bu milyar ve s bunu rakama çevirmek istiyorum. ChatGPT ve Grok saçma makro kodu yazdı. Ya Ben soruyu doğru sormuyorum ya da o doğru cevaplamıyor. Ayrıca Azerbaycan Türkçesinde yazılacak rakamlar. Aslında denedim olmadı denedim olmadı excel number to text diye Google'da arattım ve bir makro kodu bulup ChatGPT'ye yeniden yapıştırıp al bu kodun üzerinde uygula dedim. Acaba ücretsiz o yüzden mi saçma cevaplar kodlar üretiyor?
İnternetten bulup attığım makro kodunda da mesela 1 milyon yazıyorum mesela 1 milyon beş yüz altımış beş mesela, "ş,ç, ü,ö" harflere ya da büyük İ harfini I gibi bazı harfleri de ? işareti koyuyor.
Excel'de yazılan rakamı harflere nasıl çevirebilirim?
2
●88
- 19-03-2025, 15:54:27
- 19-03-2025, 16:12:00Sn. Mustafa Bolat'ın bir çalışması vardı bunun için. Bir göz atın isterseniz.
https://wordpress-528612-2859608.clo...2/10/BYMMB.zip - 19-03-2025, 16:46:26Merhabalar.. Yapmanız gerekeni adım adım yazıyorum. Adım adım uygularsanız sorunsuz çevirecektir.
Birinci adım: Temiz bir excel dosyası açın (Veya var olan çalıştığınız bir dosya üzerinden de devam edebilirsiniz)
İkinci adım: Geliştirici Sekmesinden Visual Basic Butonuna tıklayın.
Üçüncü adım: Açılan pencerede üstte bulunan Menüdeki İnsert, oradan açılan menüden ise Module seçeneğine tıklayın.
Dördüncü adım: Aşağıda verdiğim kodların tamamını oluşturduğunuz modülün içerisine yapıştırın.
Beşinci adım: Excelde herhangi bir sayfaya giderek A1 hücresine rastgele bi rakam yazın
Altıncı adım: Aynı sayfada Excel A2 hücresine =Yazı(A1) yazın..
Sonucu göreceksiniz. İyi çalışmalar.
Kodlar aşağıdadır.
Public Function Yazı(AA) Dim AAStr As String Dim BB As String If Not IsNumeric(AA) Then GoTo SayiDegil AAStr = Format(Abs(AA), "0.00") BB = Left(AAStr, Len(AAStr) - 3) Yazı = IIf(AA < 0, "Eksi ", "") & Cevir(BB) Exit Function SayiDegil: Yazı = "GİRİLEN DEĞER SAYI DEĞİL!" End Function Private Function Cevir(SayiStr As String) As String Dim Rakam(15) Dim c(3), Sonuc, e Birler = Array("", " bir ", " iki ", " üç ", " dört ", " beş ", " altı ", " yedi ", " sekiz ", " dokuz ") Onlar = Array("", " on ", " yirmi ", " otuz ", " kırk ", " elli ", " altmış ", " yetmiş ", " seksen ", " doksan ") Binler = Array(" trilyon ", " milyar ", " milyon ", " bin ", "") SayiStr = String(15 - Len(SayiStr), "0") + SayiStr For i = 1 To 15 Rakam(i) = Val(Mid$(SayiStr, i, 1)) Next i Sonuc = "" For i = 0 To 4 c(1) = Rakam(i * 3 + 1) c(2) = Rakam(i * 3 + 2) c(3) = Rakam(i * 3 + 3) If c(1) = 0 Then e = "" ElseIf c(1) = 1 Then e = "yüz" Else e = Birler(c(1)) + "yüz" End If e = e + Onlar(c(2)) + Birler(c(3)) If e <> "" Then e = e + Binler(i) If (i = 3) And (e = "birbin") Then e = "bin" Sonuc = Sonuc + e Next i If Sonuc = "" Then Sonuc = "00" Cevir = UCase(Mid(Sonuc, 1, 1)) + Mid(Sonuc, 2, Len(Sonuc) - 1) End Function