Skip to main content

Excel'de Hint Rupisi ve Diğer Kurlar İçin Sayıları Kelimelere Dönüştürme (2025 Baskısı)

Author: Xiaoyang Last Modified: 2025-08-07

İşte Excel'de sayıları Hint Rupisi veya başka bir para birimine kelimelere dönüştürmenin yolu.

Fatura, teklif, vergi formları, çekler veya ödeme makbuzları gibi finansal belgelerle çalışırken, para değerlerini hem sayısal hem de yazılı formatlarda temsil etmek genellikle gereklidir. Bu, profesyonelliği artırır ve dolandırıcılığı veya yanlış yorumlamayı önlemeye yardımcı olur.

Örnek

12.350,50 → Sadece On İki Bin Üç Yüz Elli Rupi ve Elli Paisa

Microsoft Excel'in sayıları kelimelere dönüştürmek için yerleşik bir özelliği olmasa da, bunu başarmak için birden fazla etkili yol vardır—VBA, LAMBDA fonksiyonları veya tümleşik Kutools for Excel eklentisi aracılığıyla.

Her Microsoft Sürümünde VBA ile Hint Rupisine Sayıları Kelimelere Dönüştürme

Sadece Microsoft 365 İçin LAMBDA Fonksiyonu ile Hint Rupisindeki Sayıları Kelimelere Dönüştürme

Tüm Microsoft Sürümlerinde USD, EUR ve 30'dan Fazla Başka Para Birimine Sayıları Kelimelere Dönüştürme

Hangi Yöntemi Ne Zaman Kullanılmalı


Her Microsoft Sürümünde VBA ile Hint Rupisine Sayıları Kelimelere Dönüştürme

Herhangi bir Excel sürümünün kullanıcıları için, VBA (Visual Basic for Applications), Hint numaralandırma sistemini kullanarak sayısal miktarları kelimelere dönüştürmek için özelleştirilebilir bir yöntem sunar (örneğin binler, laklar, krorlar).

Adım 1. VBA düzenleyicisini açmak için Alt + F11 tuşlarına basın (Microsoft Visual Basic for Applications penceresi).

vba-editor

Adım 2. Ekle > Modül'e gidin.

select-module

Adım 3. VBA kodunu Modül'e yapıştırın.

Hint rupisindeki sayılara kelimeleri dönüştürün

Function ConvertToRupees(ByVal MyNumber)
'UpdatebyExtendoffice
    Dim Units As String, SubUnits As String, TempStr As String
    Dim DecimalPlace As Integer, Count As Integer
    Dim Place(9) As String
    Place(2) = " Thousand "
    Place(3) = " Lakh "
    Place(4) = " Crore "
    
    MyNumber = Trim(Str(MyNumber))
    DecimalPlace = InStr(MyNumber, ".")
    
    If DecimalPlace > 0 Then
        SubUnits = GetTens(Left(Mid(MyNumber, DecimalPlace + 1) & "00", 2))
        MyNumber = Trim(Left(MyNumber, DecimalPlace - 1))
    End If
    
    Count = 1
    Do While MyNumber <> ""
        TempStr = GetHundreds(Right(MyNumber, 3))
        If TempStr <> "" Then Units = TempStr & Place(Count) & Units
        If Len(MyNumber) > 3 Then
            MyNumber = Left(MyNumber, Len(MyNumber) - 3)
        Else
            MyNumber = ""
        End If
        Count = Count + 1
    Loop
    
    ConvertToRupees = "Rupees " & Application.WorksheetFunction.Trim(Units)
    If SubUnits <> "" Then
        ConvertToRupees = ConvertToRupees & " and " & SubUnits & " Paise"
    End If
    ConvertToRupees = ConvertToRupees & " Only"
End Function

Private Function GetHundreds(ByVal MyNumber)
    Dim Result As String
    If Val(MyNumber) = 0 Then Exit Function
    MyNumber = Right("000" & MyNumber, 3)
    
    If Mid(MyNumber, 1, 1) <> "0" Then
        Result = GetDigit(Mid(MyNumber, 1, 1)) & " Hundred "
    End If
    
    If Mid(MyNumber, 2, 1) <> "0" Then
        Result = Result & GetTens(Mid(MyNumber, 2))
    Else
        Result = Result & GetDigit(Mid(MyNumber, 3))
    End If
    GetHundreds = Result
End Function

Private Function GetTens(TensText)
    Dim Result As String
    If Val(Left(TensText, 1)) = 1 Then
        Select Case Val(TensText)
            Case 10: Result = "Ten"
            Case 11: Result = "Eleven"
            Case 12: Result = "Twelve"
            Case 13: Result = "Thirteen"
            Case 14: Result = "Fourteen"
            Case 15: Result = "Fifteen"
            Case 16: Result = "Sixteen"
            Case 17: Result = "Seventeen"
            Case 18: Result = "Eighteen"
            Case 19: Result = "Nineteen"
        End Select
    Else
        Select Case Val(Left(TensText, 1))
            Case 2: Result = "Twenty "
            Case 3: Result = "Thirty "
            Case 4: Result = "Forty "
            Case 5: Result = "Fifty "
            Case 6: Result = "Sixty "
            Case 7: Result = "Seventy "
            Case 8: Result = "Eighty "
            Case 9: Result = "Ninety "
        End Select
        Result = Result & GetDigit(Right(TensText, 1))
    End If
    GetTens = Result
End Function

Private Function GetDigit(Digit)
    Select Case Val(Digit)
        Case 1: GetDigit = "One"
        Case 2: GetDigit = "Two"
        Case 3: GetDigit = "Three"
        Case 4: GetDigit = "Four"
        Case 5: GetDigit = "Five"
        Case 6: GetDigit = "Six"
        Case 7: GetDigit = "Seven"
        Case 8: GetDigit = "Eight"
        Case 9: GetDigit = "Nine"
        Case Else: GetDigit = ""
    End Select
End Function
paste-code

Adım 4. Kaydedin ve Excel’e geri dönün.

Adım 5. Bir hücre seçin ve şu formülü kullanın:

=ConvertToRupees(A2)

Enter tuşuna basın

use-formula

💡 İpucu: Bu yöntem ondalıkları (Paisa) destekler ve çevrimdışı çalışır.

VBA Kullanmanın Sınırlamaları

  • Çalışma kitabını makro etkin dosya olarak kaydetmeyi gerektirir (.xlsm).
  • Makrolar bazı ortamlarda güvenlik ayarları tarafından engellenebilir.

Diğer Kurlara (USD, EUR, vb.) Sayıları Kelimelere Dönüştürme

"Dolar" veya "Euro" gibi diğer para birimleri için çıktıyı özelleştirmek isterseniz, VBA fonksiyonundaki metin değerlerini ayarlayabilirsiniz. Aşağıda daha esnek ve basitleştirilmiş bir versiyon bulunmaktadır.

Esnek VBA Kod Şablonu (Özel Para Birimi)

'UpdatebyExtendoffice
Public Function NumberToWordsCustom(ByVal num As Double, Optional ByVal currency2 As String, Optional ByVal subCurrency As String) As String
    Dim result As String
    Dim dollars As Long
    Dim cents As Long

    dollars = Int(num)
    cents = Round((num - dollars) * 100)
  
    If Len(currency2) = 0 Then currency2 = "Dollars"
    If Len(subCurrency) = 0 Then subCurrency = "Cents"
    result = currency2 & " " & SpellNumber_English(dollars)

    If cents > 0 Then
        result = result & " and " & SpellNumber_English(cents) & " " & subCurrency
    End If

    NumberToWordsCustom = result & " Only"
End Function

Private Function SpellNumber_English(ByVal MyNumber As Long) As String
    Dim Units As Variant, Tens As Variant, Teens As Variant
    Dim Place() As String
    Dim TempStr As String
    Dim Count As Integer
    Dim t As String
    Dim StrNumber As String
    Dim n As Integer

    Place = Split(" Thousand Million Billion", " ")
    Units = Array("", "One", "Two", "Three", "Four", "Five", "Six", "Seven", "Eight", "Nine")
    Tens = Array("", "", "Twenty", "Thirty", "Forty", "Fifty", "Sixty", "Seventy", "Eighty", "Ninety")
    Teens = Array("Ten", "Eleven", "Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen", "Seventeen", "Eighteen", "Nineteen")

    StrNumber = Trim(Str(MyNumber))
    Count = 0

    Do While StrNumber <> ""
        n = Val(Right(StrNumber, 3))
        If n <> 0 Then
            t = ConvertHundreds(n, Units, Tens, Teens)
            If Count > 0 Then t = t & " " & Place(Count - 1)
            TempStr = t & " " & TempStr
        End If
        If Len(StrNumber) > 3 Then
            StrNumber = Left(StrNumber, Len(StrNumber) - 3)
        Else
            StrNumber = ""
        End If
        Count = Count + 1
    Loop

    SpellNumber_English = Trim(TempStr)
End Function

Private Function ConvertHundreds(ByVal n As Integer, Units As Variant, Tens As Variant, Teens As Variant) As String
    Dim result As String
    If n >= 100 Then
        result = Units(Int(n / 100)) & " Hundred "
        n = n Mod 100
    End If
    If n >= 20 Then
        result = result & Tens(Int(n / 10)) & " "
        n = n Mod 10
    ElseIf n >= 10 Then
        result = result & Teens(n - 10) & " "
        n = 0
    End If
    If n > 0 Then
        result = result & Units(n)
    End If
    ConvertHundreds = Trim(result)
End Function

Örnek VBA Formülü:

=NumberToWordsCustom(A2, "Dollars", "Cents")
vba-formula-to-other-currency

Diğer Para Birimlerinin Örnek VBA Formülü:

=NumberToWordsCustom(A2, "Euros", "Cents")

=NumberToWordsCustom(A2, "Pounds", "Pence")

Kod esnektir—sadece istediğiniz para birimini ve alt birimi girin.


Çalışma Kitabınızı Makro Etkinli Dosya Olarak Kaydedin

VBA kullanıyorsanız, çalışma kitabınızı makrolar etkin olarak kaydetmek çok önemlidir. Aksi takdirde, dosya kapandığında kodunuz kaybolur.

Adım 1. Dosya > Farklı Kaydet'e gidin.

use-save-as

Adım 2. Bir konum seçin ve dosya türünü seçin: Excel Makro Etkin Çalışma Kitabı (*.xlsm).

use-save-as-macro-enabled

Adım 3. Kaydet'e tıklayın.

✅ =ConvertToRupees(A2) gibi özel fonksiyonlarınız artık kalıcı olacak ve her zaman yeniden kullanılabilir.


Sadece Microsoft 365 İçin LAMBDA Fonksiyonu ile Hint Rupisindeki Sayıları Kelimelere Dönüştürme

Excel 365 kullanıcıları için, LAMBDA'yı kullanabilirsiniz—bu yeni bir Excel özelliğidir ve özel formüller tanımlamanıza olanak tanır, hiç VBA gerektirmez.

🪄 LAMBDA Nedir?

LAMBDA, Excel'deki bir özelliktir ve sizi SUM veya IF gibi yerleşik işlevler gibi kendi özel işlevlerinizi oluşturmanıza olanak tanır, ancak hiçbir kod veya makroya gerek duymaz. Bu, tekrarlayan mantığı basitleştirmek ve elektronik tablolarınızı daha temiz ve sürdürülebilir hale getirmek için harika.

Adım 1: İsim Yöneticisine gidin ve Formüller > İsim Yöneticisi'ne tıklayın.

select-name-manager

Adım 2: Yeni bir Ad oluşturun.

  • Yeni butonuna tıklayın.

    create-new-name
  • Bir Ad girin.

    Örnek: RupeeToWords

    create-name
  • Adım 3: LAMBDA formülünü Refers to alanına yapıştırın:

    =LAMBDA(n, LET( units, {"","One","Two","Three","Four","Five","Six","Seven","Eight","Nine"}, teens, {"Ten","Eleven","Twelve","Thirteen","Fourteen","Fifteen","Sixteen","Seventeen","Eighteen","Nineteen"}, tens, {"","","Twenty","Thirty","Forty","Fifty","Sixty","Seventy","Eighty","Ninety"}, num, INT(n), paise, ROUND((n - INT(n)) * 100, 0), ConvertTwo, LAMBDA(x, IF(x<10, INDEX(units, x+1), IF(x<20, INDEX(teens, x-9), INDEX(tens, INT(x/10)+1) & IF(MOD(x,10)>0, " " & INDEX(units, MOD(x,10)+1), "") ) ) ), ConvertThree, LAMBDA(x, IF(x=0, "", IF(x<100, ConvertTwo(x), INDEX(units, INT(x/100)+1) & " Hundred" & IF(MOD(x,100)>0, " " & ConvertTwo(MOD(x,100)), "") ) ) ), words, IF(num=0, "Zero", TEXTJOIN(" ", TRUE, IF(INT(num/10000000)>0, ConvertTwo(INT(num/10000000)) & " Crore", ""), IF(MOD(INT(num/100000),100)>0, ConvertTwo(INT(MOD(num,10000000)/100000)) & " Lakh", ""), IF(MOD(INT(num/1000),100)>0, ConvertTwo(INT(MOD(num,100000)/1000)) & " Thousand", ""), IF(MOD(INT(num/100),10)>0, INDEX(units, INT(MOD(num,1000)/100)+1) & " Hundred", ""), IF(MOD(num,100)>0, ConvertTwo(MOD(num,100)), "") ) ), result, "Rupees " & words & IF(paise>0, " and " & ConvertTwo(paise) & " Paise", "") & " Only", result ))
  • paste-lambda-function
  • Yeni Adı kaydetmek için Tamam'a tıklayın.

Adım 3. İsim Yöneticisi'ni kapatın ve Excel'e geri dönün.

Adım 4. Herhangi bir hücrede şu şekilde formülü kullanın:

=RupeeToWords(A2)

Enter tuşuna basın.

use-lambda-formula

👀 Tam LAMBDA fonksiyon kodu Kror, Lak, Binler ve ondalıkları ele alır.


Tüm Microsoft Sürümlerinde USD, EUR ve 30'dan Fazla Başka Para Birimine Sayıları Kelimelere Dönüştürme

En verimli ve profesyonel çözüm için, Kutools for Excel'in Numbers to Words özelliğini kullanın. Bu güçlü araç şunları destekler:

🌍 30'dan fazla para birimi, şunlar dahil:

  • Amerikan Doları (USD)
  • Euro (EUR)
  • Çin Yuanı (CNY)
  • İngiliz Sterlini (GBP)
  • vb.
İndir

Adım 1. Dönüştürmek istediğiniz hücreleri seçin.

select-cells

Adım 2. Kutools > İçerik > Numbers to Words'e gidin.

select-numbers-to-words

Adım 3. Hedef para biriminizi seçin ve Tamam'a tıklayın.

select-currency-in-dialog

Sayılar belirtilen para birimine dönüştürülür.

kutools-convert-result

😁 İpucu: Eğer doğrudan sayıları para birimine dönüştürmek istemiyorsanız, Not converted to Currency seçeneğini işaretleyin ve sonuç şu şekilde gösterilecektir:

convert-to-words

Hangi Yöntemi Ne Zaman Kullanılmalı

  • Eğer esnek, programlanabilir bir çözüme ihtiyacınız varsa ve makrolara aşina iseniz VBA'yı kullanın.

  • Eğer Excel 365 kullanıyorsanız ve sadece ara sıra Hint Rupisi değerlerini dönüştürmeniz gerekiyorsa LAMBDA'yı kullanın. Bu, hafif, paylaşılabilir bir çözümdür ve hiçbir makro veya dış araç gerektirmez—basit veya kişisel görevler için mükemmeldir.
  • Eğer en kolay, en hızlı ve en çok yönlü çözümü istiyorsanız Kutools for Excel'i kullanın—hiçbir kodlama gerekmez. Kutools özellikle şu durumlarda faydalıdır:
    • Birden fazla para birimiyle uğraşıyorsanız.
    • Toplu veya büyük veri setlerinde değerleri dönüştürmeniz gerekiyorsa.
    • Hiç makro gerektirmeyen, 30'dan fazla para birimi seçeneği ve AI destekli performansa sahip profesyonel hazır bir araç istiyorsanız.

En İyi Ofis Verimlilik Araçları

🤖 Kutools AI Asistanı: Veriye dayalı analizi devrimsel olarak değiştirin: Akıllı Yürütme |Kod Oluştur |Özel Formüller Oluştur |Verileri Analiz Edin ve Grafikler Oluşturun |Geliştirilmiş İşlevler’i çağırın
Popüler Özellikler: Yinelenenleri Bul, Vurgula veya İşaretle | Boş Satırları Sil | Sütunları veya Hücreleri Verileri Kaybetmeden Birleştir | Formül Olmadan Yuvarla...
Süper ARA: Çoklu Kriter VLookup | Çoklu Değer VLookup | Çoklu sayfa araması | Bulanık Eşleme....
Gelişmiş Açılır Liste: Hızlıca Açılır Liste Oluşturun | Bağımlı Açılır Liste | Çoklu Seçimli Açılır Liste....
Sütun Yöneticisi: Belirli Sayıda Sütun Ekle | Sütunları Taşı | Gizli Sütunların Görünürlük Durumunu Değiştir | Aralıkları & Sütunları Karşılaştır...
Özel Seçilen Özellikler: Izgara Odaklama | Tasarım Görünümü | Gelişmiş formül çubuğu | Çalışma Kitabı & Çalışma Sayfası Yöneticisi | Otomatik Metin Kütüphanesi | Tarih Seçici | Veri Birleştir | Hücreleri Şifrele/Şifre Çöz | Listeye Göre E-posta Gönder | Süper Filtre | Özel Filtre (kalın/italik/üstü çizili filtreleme...)...
En Gözde15 Araç Seti:12 Metin Aracı (Metin Ekle, Belirli Karakterleri Sil, ...) | 50+ Grafik Türü (Gantt Grafiği, ...) | 40+ Pratik Formül (Doğum tarihine dayanarak yaş hesapla, ...) | 19 Ekleme Aracı (QR Kodu Ekle, Yoldan Resim Ekle, ...) | 12 Dönüşüm Aracı (Kelimeye Dönüştür, Para Birimi Dönüştürme, ...) | 7 Birleştir & Böl Araçları (Gelişmiş Satırları Birleştir, Hücreleri Böl, ...) | ... ve daha fazlası
Kutools’u tercih ettiğiniz dilde kullanın – İngilizce, İspanyolca, Almanca, Fransızca, Çince ve40’tan fazla başka dili destekler!

Kutools for Excel ile Excel becerilerinizi güçlendirin, daha önce hiç yaşamadığınız bir verimlilik deneyimini yaşayın. Kutools for Excel, üretkenliğinizi artıracak ve zamanı kaydetmenizi sağlayacak300’den fazla gelişmiş özellik sunar. En çok ihtiyaç duyduğunuz özelliği almak için buraya tıklayın...


Office Tab, Office’e sekmeli arayüz kazandırır ve işinizi çok daha kolaylaştırır

  • Word, Excel, PowerPoint’te sekmeli düzenleme ve okuma işlevini etkinleştirin.
  • Aynı pencere içerisinde yeni sekmelerde birden fazla belge açın veya oluşturun, yeni pencerelerde açmak yerine.
  • Verimliliğinizi %50 artırın, her gün yüzlerce fare tıklamasını sizin için azaltın!