Excel'de tarihi kelimelere hızla nasıl dönüştürebilirim?
Genel olarak, Excel'de genellikle tarihi diğer tarih biçimlerine veya rakamlara dönüştürürüz, ancak aşağıda gösterilen ekran görüntüsü gibi tarihi İngilizce kelimelere dönüştürme konusunda hiç sorunla karşılaştınız mı? Aslında, bunu işleyebilecek yerleşik bir işlev yok, ancak bir VBA kodu.
Tanımlı İşlev ile tarihi kelimeye dönüştürme
Tanımlı İşlev ile tarihi kelimeye dönüştürme
İşte tarihleri kelimelere çevirme konusunda size bir iyilik yapabilecek bir makro kodu.
1. Kullandığınız sayfayı etkinleştirin ve Alt + F11 açmak için anahtarlar Uygulamalar için Microsoft Visual Basic pencere.
2. tık Ekle > modül ve aşağıdaki kodu komut dosyasına yapıştırın.
VBA: Tarihi kelimeye dönüştür
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, sonucun çıktısını alacağınız bir hücre seçin, bu formülü yazın = DateToWords (A2) (A2, kullandığınız tarihtir), Keşfet tuşuna basın ve otomatik doldurma tutamacını ihtiyacınız olan hücrelerin üzerine sürükleyin. Ekran görüntüsüne bakın:
Kutools for Excel'in Sayılardan Kelimelere özelliği ile sayıları Excel'de anında kelimelere dönüştürmenin rahatlığının kilidini açın, profesyonel görünümlü belgeleri zahmetsizce oluştururken zamandan ve emekten tasarruf edin!
İlgili Makaleler:
- Excel'de Avrupa ve ABD Arasında Tarih Biçimini Hızlıca Dönüştürme?
- Excel'de dD.MM.YYYY'yi tarih biçimine (mM / GG / YYYY) dönüştürmek nasıl?
- Excel'de Tarih ve Unix Zaman Damgası Arasında Nasıl Dönüştürülür?
En İyi Ofis Üretkenlik Araçları
Kutools for Excel ile Excel Becerilerinizi Güçlendirin ve Daha Önce Hiç Olmadığı Gibi Verimliliği Deneyimleyin. Kutools for Excel, Üretkenliği Artırmak ve Zamandan Tasarruf Etmek için 300'den Fazla Gelişmiş Özellik Sunar. En Çok İhtiyacınız Olan Özelliği Almak İçin Buraya Tıklayın...
Office Tab, Office'e Sekmeli Arayüz Getirir ve İşinizi Çok Daha Kolay Hale Getirir
- Word, Excel, PowerPoint'te sekmeli düzenlemeyi ve okumayı etkinleştirin, Publisher, Access, Visio ve Project.
- Yeni pencereler yerine aynı pencerenin yeni sekmelerinde birden çok belge açın ve oluşturun.
- Üretkenliğinizi% 50 artırır ve her gün sizin için yüzlerce fare tıklamasını azaltır!