Excel'de Tarihi Hızlıca Kelimeye Dönüştürme
Genel olarak, Excel'de tarihi genellikle başka bir tarih formatına veya rakamlara dönüştürürüz, ancak aşağıdaki ekran görüntüsünde gösterildiği gibi tarihi İngilizce kelimelere dönüştürme sorunuyla karşılaştınız mı? Aslında, bunu gerçekleştirebilecek yerleşik bir fonksiyon yoktur, sadece bir VBA kodu vardır.
Tanımlanmış Fonksiyon ile Tarihi Kelimeye Dönüştürme
Tanımlanmış Fonksiyon ile Tarihi Kelimeye Dönüştürme
İşte size tarihleri kelimelere dönüştürmede yardımcı olabilecek bir makro kodu.
1. Kullandığınız sayfayı etkinleştirin ve Microsoft Visual Basic for Applications penceresini açmak için Alt + F11 tuşlarına basın.
2. Ekle > Modül'e tıklayın ve aşağıdaki kodu betiğe yapıştırın.
VBA: Tarihi kelimeye dönüştürme
Function DateToWords(ByVal xRgVal As Date) As String
' Update by Extendoffice on 20240926
Dim xYear As String
Dim Hundreds As String
Dim Decades As String
Dim xTensArr As Variant
Dim xOrdArr As Variant
Dim xCardArr As Variant
' Initialize arrays
xOrdArr = Array("First", "Second", "Third", "Fourth", "Fifth", "Sixth", _
"Seventh", "Eighth", "Ninth", "Tenth", "Eleventh", "Twelfth", _
"Thirteenth", "Fourteenth", "Fifteenth", "Sixteenth", _
"Seventeenth", "Eighteenth", "Nineteenth", "Twentieth", _
"Twenty-first", "Twenty-second", "Twenty-third", "Twenty-fourth", _
"Twenty-fifth", "Twenty-sixth", "Twenty-seventh", "Twenty-eighth", _
"Twenty-ninth", "Thirtieth", "Thirty-first")
xCardArr = Array("", "One", "Two", "Three", "Four", "Five", "Six", "Seven", "Eight", "Nine", _
"Ten", "Eleven", "Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen", _
"Seventeen", "Eighteen", "Nineteen")
xTensArr = Array("Twenty", "Thirty", "Forty", "Fifty", "Sixty", "Seventy", "Eighty", "Ninety")
' Extract year
xYear = CStr(Year(xRgVal))
Decades = Mid$(xYear, 3)
' Handle decades
If CInt(Decades) < 20 Then
Decades = xCardArr(CInt(Decades))
Else
Decades = xTensArr(CInt(Left$(Decades, 1)) - 2) & "-" & xCardArr(CInt(Right$(Decades, 1)))
End If
' Handle hundreds
Hundreds = Mid$(xYear, 2, 1)
If CInt(Hundreds) Then
Hundreds = xCardArr(CInt(Hundreds)) & " Hundred "
Else
Hundreds = ""
End If
' Construct English representation of the date
DateToWords = xOrdArr(Day(xRgVal) - 1) & " " & Format$(xRgVal, "mmmm") & " " & _
xCardArr(CInt(Left$(xYear, 1))) & " Thousand " & Hundreds & Decades
End Function
3. Kodu kaydedin ve sayfaya geri dönün, sonuçları çıkartacağınız bir hücre seçin, bu formülü yazın =DateToWords(A2) (A2 sizin kullandığınız tarihtir), tuşa basın Enter ve ihtiyacınız olan hücrelerin üzerine otomatik doldurma tutamacını sürükleyin. Ekran görüntüsüne bakın:
Kutools for Excel'in Sayıyı Kelimeye Dönüştür özelliğiyle Excel'de anında sayıları kelimelere dönüştürmenin rahatlığını keşfedin, profesyonel görünümlü belgeler oluşturmak için zamandan ve emekten tasarruf edin!
Ücretsiz Deneme Sürümü İçin Git
İlgili Makaleler:
- Excel'de Avrupa ve Amerika Tarih Formatlarını Hızlıca Dönüştürme
- Excel'de dD.MM.YYYY'yi tarih formatına (mM/DD/YYYY) nasıl dönüştürürüm?
- Excel'de Tarih ve Unix Zaman Damgası Arasında Nasıl Dönüştürme Yapılır?
En İyi Ofis Verimlilik Araçları
Kutools for Excel ile Excel becerilerinizi geliştirin ve daha önce hiç olmadığı kadar verimli olun. Kutools for Excel, üretkenliğinizi artırmak ve zamanınızı kaydetmek için300'den fazla gelişmiş özellik sunar. En çok ihtiyacınız olan özelliği almak için buraya tıklayın...
Office Tab, Office'e sekmeli arayüz getirir ve işinizi çok daha kolaylaştırır
- Word, Excel, PowerPoint'te sekmeli düzenleme ve okuma özelliğini etkinleştirin.
- Aynı pencerenin yeni sekmelerinde birden fazla belge açın ve oluşturun, yeni pencerelerde değil.
- Verimliliğinizi %50 artırır ve her gün yüzlerce fare tıklamasını azaltır!