Sözcüklere sayıları dönüştürme

Not: En güncel yardım içeriklerini, mümkün olduğunca hızlı biçimde kendi dilinizde size sunmak için çalışıyoruz. Bu sayfanın çevirisi otomasyon aracılığıyla yapılmıştır ve bu nedenle hatalı veya yanlış dil bilgisi kullanımları içerebilir. Amacımız, bu içeriğin sizin için faydalı olabilmesini sağlamaktır. Buradaki bilgilerin faydalı olup olmadığını bu sayfanın sonunda bize bildirebilir misiniz? Kolayca başvurabilmek için İngilizce makaleye buradan ulaşabilirsiniz.

Excel çalışma sayfasında İngilizce sözcükler olarak sayıları görüntüleyen bir varsayılan işlevi yoktur, ancak bu yetenek VBA (Visual Basic for Applications) modüle aşağıdaki SpellNumber işlevi kod yapıştırarak ekleyebilirsiniz. Bu işlev, 22.50 yirmi iki lira ve elli Kuruşluk okuduğunuz şekilde dolar ve Sent tutarlarını bir formül içeren sözcükleri dönüştürme sağlar. Excel denetimleri yazdırmak için bir şablon olarak kullanıyorsanız, çok yararlı olabilir.

Sayısal değerler sözcükleri görüntülemeden metin biçimine dönüştürmek isterseniz, METNEÇEVİR işlevini kullanın.

Not: Microsoft programlama örneklerini yalnızca gösterim zımni veya garanti olmadan sağlar. Bu içerir, ancak, belirli bir amaca satılabilirlik veya zımni hiçbir garanti sınırlı değildir. Bu makalede, VBA programlama dili ile ve oluşturmak ve Hata Ayıkla yordamlar için kullanılan araçlarıyla bilgi sahibi olduğunuzu varsayar. Microsoft destek mühendisler, belirli bir yordam işlevselliğini anlamanıza yardımcı olabilir. Bununla birlikte, işlevsellik sağlamak veya gereksinimlerinizi karşılamak üzere yordamlar geliştirmek amacıyla bu örnekleri değiştirmez.

Sayılar için sözcükleri dönüştürmek için SpellNumber işlevi oluşturma

  1. Visual Basic Düzenleyicisi'ni (VBE) açmak için Alt + F11 klavye kısayolunu kullanın.

    Not: Ayrıca Visual Basic Düzenleyicisi Geliştirici sekmesini gösteren , şeritte erişebilirsiniz.

  2. Ekle sekmesini tıklatın ve modülü' nü tıklatın.

    Ekle menüsünde Modül'ı tıklatın.
  3. Şu kod satırlarını kopyalayın.

    Not: Bir Kullanıcı tanımlı işlev (UDF)bilinen, bu kod numaraları çalışma sayfanız boyunca metne dönüştürme görevini otomatik hale getirir.

    Option Explicit
    
    'Main Function
    
    Function SpellNumber(ByVal MyNumber)
    
    Dim Dollars, Cents, Temp
    
    Dim DecimalPlace, Count
    
    ReDim Place(9) As String
    
    Place(2) = " Thousand "
    
    Place(3) = " Million "
    
    Place(4) = " Billion "
    
    Place(5) = " Trillion "
    
    ' String representation of amount.
    
    MyNumber = Trim(Str(MyNumber))
    
    ' Position of decimal place 0 if none.
    
    DecimalPlace = InStr(MyNumber, ".")
    
    ' Convert cents and set MyNumber to dollar amount.
    
    If DecimalPlace > 0 Then
    
    Cents = GetTens(Left(Mid(MyNumber, DecimalPlace + 1) & _ "00", 2))
    
    MyNumber = Trim(Left(MyNumber, DecimalPlace - 1))
    
    End If
    
    Count = 1
    
    Do While MyNumber <> ""
    
    Temp = GetHundreds(Right(MyNumber, 3))
    
    If Temp <> "" Then Dollars = Temp & Place(Count) & Dollars
    
    If Len(MyNumber) > 3 Then
    
    MyNumber = Left(MyNumber, Len(MyNumber) - 3)
    
    Else
    
    MyNumber = ""
    
    End If
    
    Count = Count + 1
    
    Loop
    
    Select Case Dollars
    
    Case ""
    
    Dollars = "No Dollars"
    
    Case "One"
    
    Dollars = "One Dollar"
    
    Case Else
    
    Dollars = Dollars & " Dollars"
    
    End Select
    
    Select Case Cents
    
    Case ""
    
    Cents = " and No Cents"
    
    Case "One"
    
    Cents = " and One Cent"
    
    Case Else
    
    Cents = " and " & Cents & " Cents"
    
    End Select
    
    SpellNumber = Dollars & Cents
    
    End Function
    
    
    ' Converts a number from 100-999 into text
    
    Function GetHundreds(ByVal MyNumber)
    
    Dim Result As String
    
    If Val(MyNumber) = 0 Then Exit Function
    
    MyNumber = Right("000" & MyNumber, 3)
    
    ' Convert the hundreds place.
    
    If Mid(MyNumber, 1, 1) <> "0" Then
    
    Result = GetDigit(Mid(MyNumber, 1, 1)) & " Hundred "
    
    End If
    
    ' Convert the tens and ones place.
    
    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
    
    
    ' Converts a number from 10 to 99 into text.
    
    
    Function GetTens(TensText)
    
    Dim Result As String
    
    Result = "" ' Null out the temporary function value.
    
    If Val(Left(TensText, 1)) = 1 Then ' If value between 10-19...
    
    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"
    
    Case Else
    
    End Select
    
    Else ' If value between 20-99...
    
    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 "
    
    Case Else
    
    End Select
    
    Result = Result & GetDigit _
    
    (Right(TensText, 1)) ' Retrieve ones place.
    
    End If
    
    GetTens = Result
    
    End Function
    
    
    ' Converts a number from 1 to 9 into text.
    
    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
  4. Kod satırlarının yapıştırma Modül1 (kod) kutusu.

    Modül1 içinde yapıştırılan kodu (kod) kutusu.
  5. Excel'e geri dönmek için Alt + Q tuşlarına basın. SpellNumber işlevinin artık kullanılmaya hazırdır.

    Not: Bu işlev, yalnızca geçerli çalışma kitabı için çalışır. Bu işlev başka bir çalışma kitabında kullanmak için bu çalışma kitabında kodu yapıştırmak için adımları yinelemeniz gerekir.

Sayfanın Başı

Ayrı hücrelerdeki SpellNumber işlevini kullanma

  1. Formül SpellNumber =(A1) yazılmış bir sayı, görüntülemek istediğiniz hücreye yazın A1 nerede sayı içeren hücre dönüştürmek istediğiniz. Değer el ile de yazabilirsiniz gibi SpellNumber(22.50) =.

  2. Formülü onaylamak için Enter tuşuna basın.

Sayfanın Başı

SpellNumber işlevi çalışma kitabınızı kaydetme

Excel çalışma kitabını makro işlevleri standart makrosuz çalışma kitabı (.xlsx) biçiminde kaydedemezsiniz. Dosya ' yı tıklatırsanız > kaydedin. VB proje iletişim kutusunu açar. Hayır' ı tıklatın.

VB proje iletişim kutusunda tıklatın No

Dosyanızı, geçerli biçimiyle dosyanızı tutmak için bir Excel makro içerebilen çalışma kitabı (.xlsm) olarak kaydedebilirsiniz.

  1. Dosya > Farklı Kaydet'e tıklayın.

  2. Kayıt türü açılan menüyü tıklatın ve Excel makro içerebilen çalışma kitabınıseçin.

  3. Kaydet'i tıklatın.

Sayfanın Başı

Ayrıca Bkz:

METNEÇEVİR işlevi

Office yeteneklerinizi geliştirin
Eğitimleri keşfedin
Yeni özellikleri ilk olarak siz edinin
Office Insider Programına Katılın

Bu bilgi yararlı oldu mu?

Görüşleriniz için teşekkür ederiz!

Geri bildiriminiz için teşekkürler! Office destek temsilcilerimizden biriyle görüşmeniz yararlı olabilir.

×