Excel'de sayıları yazıya dönüştürme – Kapsamlı bir kılavuz
Sayıları yazıya dönüştürme işlemi, genellikle finansal raporlar, yasal belgeler, faturalar veya çekler gibi durumlarda zorunludur. Excel bu özelliği doğrudan sunmasa da, yerleşik Microsoft 365 işlevlerinden VBA ile oluşturulan kullanıcı tanımlı işlevlere ve güçlü üçüncü taraf eklentilere kadar bu dönüşümü gerçekleştirmenin birkaç güvenilir yöntemi mevcuttur. Bu kapsamlı kılavuz, her bir yöntemi adım adım açıklar, avantajlarını ve sınırlamalarını özetler ve ihtiyaçlarınıza en uygun çözümü seçmenize yardımcı olur.

- Yeni yerleşik işlevleri kullanın (yalnızca Microsoft 365)
- VBA kullanıcı tanımlı işlevini kullanın
- Kutools for Excel'i birkaç tıklamayla kullanın
Excel'de Kelimeye Dönüştür dönüştürme yöntemleri
Bu bölüm, Excel’de para birimini kelimelere dönüştürmek için üç etkili yöntemi tanıtıyor. Excel sürümünüzle ve kullanım amacınızla en iyi uyum sağlayan yöntemi seçin.
Yöntem 1: Yeni yerleşik işlevleri kullanın (yalnızca Microsoft 365)
Microsoft 365 için Excel kullanıyorsanız, para birimi değerlerini yazıya dönüştürmek amacıyla yaratıcı bir formül kombinasyonuyla yeni TRANSLATE işlevinden yararlanabilirsiniz.
Aşağıdaki ekran görüntüsünde gösterildiği gibi, A2:A5 aralığındaki para birimi değerlerini yazıya dönüştürmek için aşağıdaki formülü kullanabilirsiniz.

- Boş bir hücre seçin (örneğin B2) ve aşağıdaki formülü girin.=PROPER(SUBSTITUTE(SUBSTITUTE(LOWER(TRANSLATE(BAHTTEXT(B9),"th","en")),"baht","dollars"),"satang","cents"))
- "Enter" tuşuna basın, ardından diğer satırlara uygulamak için "Doldurma Tutamacı"nı aşağı doğru sürükleyin.

Formül nasıl çalışır:
- BAHTTEXT: Sayıyı Thai baht cinsinden yazıya dönüştürür (örneğin, “หนึ่งบาทถ้วน”).
- TRANSLATE(…,"th","en"): Metni bir dilden başka bir dile çevirir (Microsoft 365 gerektirir). Bu örnekte Tayca'dan İngilizce'ye çevirir.
- LOWER(): Tutarlılık sağlamak amacıyla tüm metni küçük harfe dönüştürür.
- SUBSTITUTE(): "baht" ve "satang" gibi para birimi terimlerini istediğiniz ifadelerle değiştirmenizi sağlar.
- PROPER(): Her kelimenin ilk harfini büyük yaparak uygun biçimlendirmeyi sağlar.
Diğer para birimlerine uyarlayın:
Yukarıdaki formül ABD doları cinsinden sonuç verir. Ana ve alt birimleri değiştirerek diğer para birimlerine uyarlayabilirsiniz:
- "dolar" ifadesini hedef para biriminizin ana birimiyle değiştirin; örneğin İngiliz Sterlini için "sterlin".
- "sent" ifadesini alt birimle değiştirin; örneğin İngiliz Sterlini için "peni".
Aşağıdaki tabloda uyumlu para birimleri ve kullanabileceğiniz ilgili formüller listelenmiştir:
| Para Birimi | Ana Birim Değiştirme | Alt Birim Değiştirme | Örnek Formül (Değer A2 hücresinde varsayılır) |
|---|---|---|---|
| USD | dolar | sent | =PROPER(SUBSTITUTE(SUBSTITUTE(LOWER(TRANSLATE(BAHTTEXT(A2),"th","en")),"baht","dollars"),"satang","cents")) |
| GBP | sterlin | peni | =PROPER(SUBSTITUTE(SUBSTITUTE(LOWER(TRANSLATE(BAHTTEXT(A2),"th","en")),"baht","pounds"),"satang","pence")) |
| EUR | euro | sent | =PROPER(SUBSTITUTE(SUBSTITUTE(LOWER(TRANSLATE(BAHTTEXT(A2),"th","en")),"baht","euros"),"satang","cents")) |
| MYR | ringgit | sen | =PROPER(SUBSTITUTE(SUBSTITUTE(LOWER(TRANSLATE(BAHTTEXT(A2),"th","en")),"baht","ringgit"),"satang","sen")) |
Bu yöntemin sınırlamaları:
- Yalnızca Microsoft 365'teki Excel'de çalışır (TRANSLATE() işlevi nedeniyle).
- Çıktı, büyük ölçüde BAHTTEXT() biçimlendirmesinin doğruluğuna bağlıdır.
- Bu yöntem, hem ana birime hem de alt birime sahip para birimleri için uygundur (örneğin dolar ve sent gibi Tay Bahtı). Benzer para yapısına sahip olmayan para birimleri için önerilmez.
Yöntem 2: VBA kullanıcı tanımlı işlevini kullanın
Bu bölümde, sayısal değerleri İngilizce para birimi kelimelerine dönüştürmek için VBA tabanlı bir Kullanıcı Tanımlı İşlev (UDF) kullanmayı öğreneceksiniz—özellikle varsayılan olarak ABD Doları (USD) için özelleştirilmiştir.
Adım 1: VBA kodunu ekleyin
- Bu özelliği kullanmak için istediğiniz çalışma sayfasını açın.
- "Microsoft Visual Basic for Applications" penceresini açmak için **Alt + F11** tuşlarına basın.
- Düzenleyicide **"Ekle" > "Modül"** seçeneğine tıklayıp aşağıdaki VBA kodunu yapıştırın.
Function SpellNumberToEnglish(ByVal pNumber) 'Update by Extendoffice Dim Dollars, Cents arr = Array("", "", " Thousand ", " Million ", " Billion ", " Trillion ") pNumber = Trim(Str(pNumber)) xDecimal = InStr(pNumber, ".") If xDecimal > 0 Then Cents = GetTens(Left(Mid(pNumber, xDecimal + 1) & "00", 2)) pNumber = Trim(Left(pNumber, xDecimal - 1)) End If xIndex = 1 Do While pNumber <> "" xHundred = "" xValue = Right(pNumber, 3) If Val(xValue) <> 0 Then xValue = Right("000" & xValue, 3) If Mid(xValue, 1, 1) <> "0" Then xHundred = GetDigit(Mid(xValue, 1, 1)) & " Hundred " End If If Mid(xValue, 2, 1) <> "0" Then xHundred = xHundred & GetTens(Mid(xValue, 2)) Else xHundred = xHundred & GetDigit(Mid(xValue, 3)) End If End If If xHundred <> "" Then Dollars = xHundred & arr(xIndex) & Dollars End If If Len(pNumber) > 3 Then pNumber = Left(pNumber, Len(pNumber) - 3) Else pNumber = "" End If xIndex = xIndex + 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 SpellNumberToEnglish = Dollars & Cents End Function Function GetTens(pTens) Dim Result As String Result = "" If Val(Left(pTens, 1)) = 1 Then Select Case Val(pTens) 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 Select Case Val(Left(pTens, 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(pTens, 1)) End If GetTens = Result End Function Function GetDigit(pDigit) Select Case Val(pDigit) 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
- Çalışma sayfasına dönmek için "Alt" + "Q" tuşlarına basın.
Adım 2: İşlevi uygulayın
- Bir hücreye aşağıdaki formülü girin ve "Enter" tuşuna basın.=SpellNumberToEnglish(A2)
- Ardından, doldurma tutamacını sürükleyerek bu biçimi diğer satırlara istediğiniz gibi uygulayın. Sayılarınız artık şu şekilde yazıyla görüntülenecektir:

Diğer para birimlerine uyarlayın:
İşlev, yalnızca USD için sabitlenmiş "Dolar" ve "Sent" değerlerini döndürür. Sayıları başka para birimlerine—örneğin "İngiliz Sterlini"—dönüştürmek istiyorsanız, aşağıdaki kod satırlarında ana ve alt birimleri elle güncellemeniz gerekir.

Çalışma kitabını makro etkin bir dosya olarak kaydedin
Varsayılan olarak, çalışma kitabı makro etkin bir dosya olarak kaydedilmediği sürece VBA işlevleri korunmaz:
- Kaydetmek için "Ctrl" + "S" tuşlarına basın.
- Makrolarla ilgili açılır mesajda "Geri Dön" düğmesini seçin.Not: Açılır pencerede yalnızca "Evet", "Hayır" ve "Yardım" seçenekleri görünüyorsa "Hayır" seçeneğine tıklayın.

- "Farklı Kaydet" penceresinde.
- Kayıt konumunuzu seçin.
- «Kaydetme Biçimini Belirt» açılır listesinden "Excel Makro Etkin Çalışma Kitabı (*.xlsm)" seçeneğini seçin.
- "Kaydet" düğmesine tıklayın.

SpellNumberToEnglish VBA İşlevinin Sınırlamaları
- Bu işlev yalnızca İngilizce sonuçlar üretir.
- Fransızca, Almanca gibi diğer dilleri desteklemez; ayrıca para biriminin sayının önünde yer aldığı para yapılarını da işleyemez (örneğin Hint İngilizcesi’nde “Yüz Rupi”).
- Çalışma kitabını makro etkin bir dosya (.xlsm) olarak kaydetmezseniz, Excel’i kapattığınızda işlev kalıcı olmaz.
- Normal bir .xlsx dosyası olarak kaydedildiğinde, tüm VBA kodları kaldırılır.
- Makro içeren dosyayı başkalarıyla paylaştığınızda, dosya açıldığında “Güvenlik Uyarısı – Makrolar devre dışı bırakıldı” mesajı görüntülenir.
- Bazı kullanıcılar, olası güvenlik risklerini dikkate alarak makroları etkinleştirmekten kaçınabilir ve dosyayı kullanmayı tercih etmeyebilir.
- Para birimiyle ilgili terimlerde veya biçimlendirmede yapılacak her türlü değişiklik, VBA kodunun manuel olarak düzenlenmesini gerektirir.
- Makrolarla veya komut dosyalarıyla tanışık olmayan kullanıcılar için uygun değildir.
Yöntem 3: Kutools for Excel kullanın (Hiçbir formül veya VBA gerekmez)
"Kutools for Excel" yüklüyse, sayıları İngilizce'ye (para birimi ya da düz metin olarak) veya EUR, GBP, JPY gibi onlarca farklı dile ve para birimine dönüştürmek için "Kelimeye Dönüştür" özelliğini kullanın.
Excel'de Kelimeye Dönüştür dönüştürmek için kod gerektirmeyen, kullanıcı dostu ve çok yönlü bir çözüm arıyorsanız, Kutools for Excel aşağıdaki özellikleri destekleyen özel "Kelimeye Dönüştür" özelliğini sunar:
- İngilizce (USD, GBP, EUR vb.)
- Onlarca başka dil ve para birimi (örneğin Japon Yeni, Hint Rupisi, Çin Yuanı)
- Para birimi biçimi veya düz metin (örneğin, "Yüz Yirmi Üç Dolar" yerine "Yüz Yirmi Üç")
Kullanım adımları:
- Dönüştürmek istediğiniz sayıları içeren hücreleri seçin.
- "Kutools" > "İçerik" > "Kelimeye Dönüştür" seçeneğini seçin.
- "Sayıları Para Birimi Kelimesine Dönüştür" iletişim kutusunda şunları yapmanız gerekir:
- Tercih ettiğiniz dili ve para birimi biçimini seçin (örneğin, USD için İngilizce – Amerika Birleşik Devletleri).
- “Tamam” düğmesine tıklayın.

İsteğe bağlı: Düz İngilizce kelimeleri “dolar” veya “sent” ekleri olmadan almak istiyorsanız, “Para birimine dönüştürme” seçeneğini işaretleyin.
Seçtiğiniz sayılar, ayarlarınıza göre uygun para birimi kelimelerine dönüştürülür.
Kutools for Excel– Excel'i, işinizi daha hızlı ve kolay hale getiren 300 temel araçla güçlendirin ve daha akıllı veri işleme ile üretkenlik için yapay zeka özelliklerinden yararlanın.Hemen Edinin
Ters işlem: Para birimi kelimelerini sayılara çevirme
İngilizce kelimelerle yazılmış para birimi tutarlarınız varsa, örneğin:
ve bunları Excel'de gerçek sayılara dönüştürmek istiyorsanız (örn. 123,45), aşağıdaki özel VBA Kullanıcı Tanımlı İşlevi'ni (UDF) kullanabilirsiniz.

Adım 1: VBA Düzenleyiciyi açın ve VBA kodunu ekleyin
- Excel çalışma kitabınızı açın.
- Microsoft Visual Basic for Applications (VBA) düzenleyicisini açmak için Alt+F11 tuşlarına basın.
- VBA Düzenleyicisi'nde "Ekle" > "Modül" seçeneğine tıklayın.
- Aşağıdaki VBA kodunu boş modül penceresine kopyalayıp yapıştırın:
Function WordsToNumber(ByVal Txt As String) As Double 'Updated by Extendoffice Dim x As Object: Set x = CreateObject("Scripting.Dictionary") Dim units, tens, specials Dim part As String, parts() As String Dim total As Double, partial As Double, multiplier As Double Dim i As Long, word As String Txt = LCase(Trim(Txt)) Txt = Replace(Txt, ",", "") Txt = Replace(Txt, "-", " ") Txt = Replace(Txt, " and ", " ") Txt = Replace(Txt, " ", " ") ' Setup basic number words x.Add "zero", 0: x.Add "one", 1: x.Add "two", 2: x.Add "three", 3 x.Add "four", 4: x.Add "five", 5: x.Add "six", 6: x.Add "seven", 7 x.Add "eight", 8: x.Add "nine", 9: x.Add "ten", 10: x.Add "eleven", 11 x.Add "twelve", 12: x.Add "thirteen", 13: x.Add "fourteen", 14 x.Add "fifteen", 15: x.Add "sixteen", 16: x.Add "seventeen", 17 x.Add "eighteen", 18: x.Add "nineteen", 19: x.Add "twenty", 20 x.Add "thirty", 30: x.Add "forty", 40: x.Add "fifty", 50 x.Add "sixty", 60: x.Add "seventy", 70: x.Add "eighty", 80 x.Add "ninety", 90: x.Add "hundred", 100: x.Add "thousand", 1000 x.Add "million", 1000000: x.Add "billion", 1000000000 Dim dollarPart As String, centPart As String Dim dollarValue As Double, centValue As Double ' Split into dollars and cents If InStr(Txt, "dollar") > 0 Then dollarPart = Trim(Split(Txt, "dollar")(0)) End If If InStr(Txt, "cent") > 0 Then centPart = Trim(Split(Txt, "cent")(0)) If InStr(centPart, "dollar") > 0 Then centPart = Trim(Split(centPart, "dollar")(1)) End If End If dollarValue = ParseWordsToNumber(dollarPart, x) centValue = ParseWordsToNumber(centPart, x) WordsToNumber = dollarValue + centValue / 100 End Function Private Function ParseWordsToNumber(ByVal Txt As String, x As Object) As Double Dim parts() As String: parts = Split(Txt, " ") Dim total As Double, current As Double Dim i As Long, val As Double For i = 0 To UBound(parts) If x.exists(parts(i)) Then val = x(parts(i)) Select Case val Case 100 If current = 0 Then current = 1 current = current * val Case Is >= 1000 If current = 0 Then current = 1 total = total + current * val current = 0 Case Else current = current + val End Select End If Next i total = total + current ParseWordsToNumber = total End Function
Adım 2: İşlevi sayfanızda uygulayın
- Excel’e dönmek için “Alt” + “Q” tuşlarına basın.
- Herhangi bir boş hücreye bu formülü girin ve "Enter" tuşuna basın. Kalan sonuçları almak için Doldurma Tutamacı'ni aşağı sürükleyin.=WordsToNumber(A2)

Sonuç
Kelimeye Dönüştür dönüştürme—veya kelimeleri tekrar sayılara çevirme—Excel'in yerel olarak sunduğu bir özellik değildir; ancak bu rehber, ihtiyaçlarınıza göre birden fazla pratik çözümün olduğunu göstermiştir:
- Microsoft 365 kullanıcıları, özellikle "ana + alt birim" yapısına sahip para birimlerinde, para birimi tutarlarını İngilizce kelimelere dönüştürmek için TRANSLATE gibi modern yerleşik işlevlerden yararlanabilir.
- VBA kullanıcı tanımlı işlevleri, “Kelimeye Dönüştür” dönüştürmesi ve para birimi kelimelerini sayısal değerlere geri çevirme konularında daha fazla esneklik sağlar; ancak makroya ilişkin güvenlik endişeleri içerir ve kodlamaya aşina kullanıcılar için en uygundur.
- Kutools for Excel, hiçbir formül veya kodlamaya gerek kalmadan onlarca para birimini ve dili destekleyen, kullanımı en kolay, çok dilli ve zengin özelliklere sahip çözümü sunar.
- Kelimeleri tekrar sayılara çevirmeniz gerekiyorsa, VBA çözümü bu açığı etkili bir şekilde kapatır; ancak doğru sonuçlar için (örn. virgülleri kaldırmak gibi) temizlik işlemleri gerekebilir.
Finansal belgeler hazırlıyor, çek basımını otomatikleştiriyor ya da yalnızca veri sunumunu geliştiriyor olmanız fark etmeksizin, doğru yöntemi seçmek profesyonel ve doğru çıktılar elde etmenize yardımcı olur.
En İyi Office Üretkenlik Araçları
Excel becerilerinizi Kutools for Excel ile geliştirin ve verimlilikte hiç yaşamadığınız bir deneyim yaşayın.Kutools for Excel, üretkenliği artırmak ve Zamanı Kaydet için 300’den fazla gelişmiş özelliğe sahiptir.İhtiyacınız olan özelliği hemen edinmek için buraya tıklayın…
Office Tab, Office uygulamalarına sekmeli bir arayüz kazandırarak işlerinizi çok daha kolay hale getirir.
- Word, Excel, PowerPoint, Publisher, Access, Visio ve Project'te sekmeli düzenleme ve okuma özelliğini etkinleştirin.
- Belgeleri yeni pencerelerde değil, aynı pencerenin yeni sekmelerinde açıp oluşturun.
- Günlük üretkenliğinizi %50 artırır ve her gün yüzlerce fare tıklamasından tasarruf etmenizi sağlar!
Tüm Kutools eklentileri — tek bir kurulum dosyasında!
Kutools for Office paketi, Excel, Word, Outlook ve PowerPoint eklentilerini ve ayrıca Office Tab Pro’yu içeren kapsamlı bir çözümdür; Office uygulamalarında çalışan ekipler için idealdir.
- Hepsi bir arada paket— Excel, Word, Outlook ve PowerPoint eklentileri + Office Tab Pro
- Tek kurulum, tek lisans— birkaç dakikada hazır (MSI uyumlu)
- Birlikte daha iyi çalışır— Office uygulamalarında akıcı üretkenlik
- 30 günlük tam özellikli deneme— kayıt gerekmez, kredi kartı gerekmez
- En iyi fiyat performans— ayrı ayrı eklenti satın almaya göre tasarruf sağlar






