Note: The other languages of the website are Google-translated. Back to English

Bagaimana cara cepat mengubah tanggal menjadi kata-kata di Excel?

Secara umum, kami biasanya mengonversi tanggal ke format tanggal atau angka lain di Excel, tetapi apakah Anda pernah mengalami masalah tentang mengubah tanggal ke kata-kata bahasa Inggris seperti gambar di bawah ini? Sebenarnya, tidak ada fungsi bawaan yang bisa menanganinya kecuali kode VBA.
doc tanggal ke kata 1

Konversikan tanggal ke kata dengan Fungsi Ditentukan


Konversikan tanggal ke kata dengan Fungsi Ditentukan

Berikut adalah kode makro yang dapat membantu Anda dalam mengonversi tanggal menjadi kata-kata.

1. Aktifkan lembar yang Anda gunakan dan tekan Alt + F11 kunci untuk membuka Microsoft Visual Basic untuk Aplikasi jendela.

2. klik Menyisipkan > Modul dan tempel kode di bawah ini ke skrip.

VBA: Ubah tanggal menjadi kata

Function DateToWords(ByVal xRgVal As Date) As String
'UpdatebyExtendoffice20170926
    Dim xYear As String
    Dim Hundreds As String
    Dim Decades As String
    Dim xTensArr As Variant
    Dim xOrdArr As Variant
    Dim xCardArr As Variant
    xOrdArr = Array("First", "Second", "Third", _
                   "Fourth", "Fifth", "Sixth", _
                   "Seventh", "Eighth", "Nineth", _
                   "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-nineth", "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")
    xYear = CStr(Year(xRgVal))
    Decades = Mid$(xYear, 3)
    If CInt(Decades) < 20 Then
        Decades = xCardArr(CInt(Decades))
    Else
        Decades = xTensArr(CInt(Left$(Decades, 1)) - 2) & "-" & _
                xCardArr(CInt(Right$(Decades, 1)))
    End If
        Hundreds = Mid$(xYear, 2, 1)
    If CInt(Hundreds) Then
        Hundreds = xCardArr(CInt(Hundreds)) & " Hundred "
    Else
        Hundreds = ""
    End If
    DateToWords = xOrdArr(Day(xRgVal) - 1) & _
                  Format$(xRgVal, " mmmm ") & _
                  xCardArr(CInt(Left$(xYear, 1))) & _
                  " Thousand " & Hundreds & Decades
End Function

doc tanggal ke kata 2

3. Simpan kode dan kembali ke lembar, pilih sel yang akan Anda keluaran hasilnya, ketikkan rumus ini = DateToWords (A1) (A1 adalah tanggal yang Anda gunakan), tekan Enter kunci dan seret tuas pengisian otomatis ke sel yang Anda butuhkan. Lihat tangkapan layar:
doc tanggal ke kata 3


Angka ke Kata

dokter mengeja nomor 1

Artikel Relatif:


Alat Produktivitas Kantor Terbaik

Kutools for Excel Memecahkan Sebagian Besar Masalah Anda, dan Meningkatkan Produktivitas Anda hingga 80%

  • Reuse: Masukkan dengan cepat rumus, bagan yang kompleks dan apa pun yang pernah Anda gunakan sebelumnya; Enkripsi Sel dengan kata sandi; Buat Milis dan mengirim email ...
  • Bilah Formula Super (dengan mudah mengedit beberapa baris teks dan rumus); Membaca Tata Letak (membaca dan mengedit sel dalam jumlah besar dengan mudah); Tempel ke Rentang yang Difilter...
  • Gabungkan Sel / Baris / Kolom tanpa kehilangan Data; Pisahkan Konten Sel; Gabungkan Baris / Kolom Duplikat... Mencegah Sel Duplikat; Bandingkan Rentang...
  • Pilih Duplikat atau Unik Baris; Pilih Baris Kosong (semua sel kosong); Temukan Super dan Temukan Fuzzy di Banyak Buku Kerja; Pilih Acak ...
  • Salinan Tepat Beberapa Sel tanpa mengubah referensi rumus; Buat Referensi Otomatis ke Beberapa Lembar; Sisipkan Poin, Kotak Centang, dan lainnya ...
  • Ekstrak Teks, Tambahkan Teks, Hapus berdasarkan Posisi, Hapus Space; Membuat dan Mencetak Subtotal Paging; Konversi Konten Antar Sel dan Komentar...
  • Filter Super (simpan dan terapkan skema filter ke sheet lain); Penyortiran Lanjutan menurut bulan / minggu / hari, frekuensi dan lainnya; Filter Khusus dengan huruf tebal, miring ...
  • Gabungkan Workbooks dan WorkSheets; Gabungkan Tabel berdasarkan kolom kunci; Pisahkan Data menjadi Beberapa Lembar; Konversi Batch xls, xlsx dan PDF...
  • Lebih dari 300 fitur canggih. Mendukung Office / Excel 2007-2021 dan 365. Mendukung semua bahasa. Penerapan yang mudah di perusahaan atau organisasi Anda. Fitur lengkap Uji coba gratis 30 hari. Jaminan uang kembali 60 hari.
tab kte 201905

Tab Office Membawa antarmuka Tab ke Office, dan Membuat Pekerjaan Anda Jauh Lebih Mudah

  • Aktifkan pengeditan dan pembacaan tab di Word, Excel, PowerPoint, Publisher, Access, Visio, dan Project.
  • Buka dan buat banyak dokumen di tab baru di jendela yang sama, bukan di jendela baru.
  • Meningkatkan produktivitas Anda sebesar 50%, dan mengurangi ratusan klik mouse untuk Anda setiap hari!
officetab bawah
Urutkan komentar berdasarkan
komentar (20)
Belum ada peringkat. Jadilah yang pertama memberi peringkat!
Komentar ini diminimalkan oleh moderator di situs
datetowords Formula tidak berfungsi di semua file exall
Komentar ini diminimalkan oleh moderator di situs
Maaf, bisakah Anda memberi tahu saya jenis file excel mana yang tidak dapat berfungsi?
Komentar ini diminimalkan oleh moderator di situs
Ini menempatkan tanda hubung setelah beberapa dekade lebih dari 20 yang berakhir dengan nol.
Komentar ini diminimalkan oleh moderator di situs
Memperbaiki tanda hubung setelah 20, 30, 40, dst.

Tambahkan ini setelah "Jika CInt(Decades) < 20 Kemudian
Dekade = xCardArr(CInt(Dekade))"

LainJika CInt(Dekade) Suka "*0" Lalu
Dekade = xTensArr(CInt(Kiri$(Dekade, 1)) - 2)
Komentar ini diminimalkan oleh moderator di situs
Yah, itu berfungsi, bagus, tetapi beberapa masalah format ada di sini, seperti 1975 (Sembilan Belas Ribu Tujuh Puluh Lima) bukan (Seribu Sembilan Ratus Tujuh Puluh Lima), Tetapi dalam 20+ kasus formatnya benar seperti 2011 (Dua Ribu Sebelas ), dan juga masalah kedua adalah (tunggal/jamak), di sini (Seribu, Dua Ribu, Seratus, Sembilan Ratus), Tolong selesaikan ini, terima kasih
Komentar ini diminimalkan oleh moderator di situs
Luar biasa ...
Komentar ini diminimalkan oleh moderator di situs
kerjanya bagus tapi saya ingin untuk 90-an "Sembilan Belas Ratus" bukan "Seribu Sembilan ratus"... terima kasih!
Komentar ini diminimalkan oleh moderator di situs
Maaf, zia khan, saya tidak mengerti maksud Anda yang mengubah 90 menjadi seribu sembilan ratus. VBA hanya dapat mengonversi tanggal menjadi kata-kata, utilitas Split Out Number mengonversi angka ke kata mata uang bahasa Inggris
Komentar ini diminimalkan oleh moderator di situs
"Sembilan Belas Ratus" diucapkan dalam bahasa Inggris, itu salah sebenarnya.
Komentar ini diminimalkan oleh moderator di situs
Halo bisakah kita juga melakukan ini di word docx?
Komentar ini diminimalkan oleh moderator di situs
tanggal ke kata dalam bahasa gujarati tersedia? Tolong jawab aku. 9427909038
Komentar ini diminimalkan oleh moderator di situs
Saya pikir itu tidak berfungsi untuk bahasa lain kecuali bahasa Inggris.
Komentar ini diminimalkan oleh moderator di situs
cara menggunakan kode ini di vb6 untuk kotak teks
Komentar ini diminimalkan oleh moderator di situs
Pak / Nyonya

Hal ini sangat berguna bagi saya.

Benar-benar Luar Biasa dan membantu menyelesaikan masalah dalam satu menit.

Terima kasih telah mengunggah dokumen ini. Bagus sekali
Komentar ini diminimalkan oleh moderator di situs
terima kasih telah membantu saya. sangat berguna dalam mengubah tanggal lahir di word
Komentar ini diminimalkan oleh moderator di situs
Saya ingin menambahkan teks ke output, misalnya, 1958 dikonversi menjadi Seribu Sembilan Belas Ratus Lima Puluh Delapan dan saya ingin mengatakan Seribu Sembilan Belas Ratus serta XNUMX. Bisakah seseorang memberi saya contoh bagaimana saya bisa melakukan ini?
Komentar ini diminimalkan oleh moderator di situs
Itu memberi #NAME? Kesalahan
Komentar ini diminimalkan oleh moderator di situs
ا
Komentar ini diminimalkan oleh moderator di situs
07/08/1998 TUJUH AGUSTUS Sembilan Belas Ratus Sembilan Puluh Delapan
Saya perlu dob ke dalam kata-kata dalam format atas tetapi saya menggunakan mikro ini di excel saya mendapatkan ini
07/08/1998 TUJUH AGUSTUS SERIBU SEMBILAN RATUS SEMBILAN PULUH DELAPAN yang tidak berguna
Komentar ini diminimalkan oleh moderator di situs
Hai, MAX, saya telah memodifikasi VBA, silakan coba dan beri tahu saya jika berhasil. Terima kasih.
Function DateToWords(ByVal xRgVal As Date) As String
'UpdatebyExtendoffice20170926
    Dim xYear As String
    Dim Decades As String
    Dim years As String
    Dim xTensArr As Variant
    Dim xyearArr As Variant
    Dim xOrdArr As Variant
    Dim xCardArr As Variant
    xOrdArr = Array("First", "Second", "Third", _
                   "Fourth", "Fifth", "Sixth", _
                   "Seventh", "Eighth", "Nineth", _
                   "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-nineth", "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")
    xYear = CStr(Year(xRgVal))
    
    
      xyearArr = Array("", "One", "Two", "Three", "Four", _
                   "Five", "Six", "Seven", "Eight", "Nine", _
                   "Ten", "Eleven", "Twelve", "Thirteen", _
                   "Fourteen", "Fifteen", "Sixteen", _
                   "Seventeen", "Eighteen", "Nineteen", "Twenty", "Thirty", "Forty", "Fifty", _
               "Sixty", "Seventy", "Eighty", "Ninety")

    years = xyearArr(CInt(Year(xRgVal) / 100)) & " Hundred"
    
    Decades = Mid$(xYear, 3)
    If CInt(Decades) < 20 Then
        Decades = xCardArr(CInt(Decades))
    Else
        Decades = xTensArr(CInt(Left$(Decades, 1)) - 2) & "-" & _
                xCardArr(CInt(Right$(Decades, 1)))
    End If

    DateToWords = UCase(xOrdArr(Day(xRgVal) - 1) & _
                  Format$(xRgVal, " mmmm ") & _
                  years & " " & Decades)
End Function

Belum ada komentar yang diposting di sini
Tinggalkan komentar anda
Posting sebagai Tamu
×
Beri peringkat pos ini:
0   Karakter
Lokasi yang Disarankan

Ikuti kami

Hak Cipta © 2009 - www.extendoffice.com. | Seluruh hak cipta. Dipersembahkan oleh ExtendOffice. | Peta Situs
Microsoft dan logo Office adalah merek dagang atau merek dagang terdaftar dari Microsoft Corporation di Amerika Serikat dan / atau negara lain.
Dilindungi oleh Sectigo SSL