Daftar Isi
Menerapkan Makro VBA adalah metode paling efektif, tercepat, dan teraman untuk menjalankan operasi apa pun di Excel. Pada artikel ini, kami akan menunjukkan kepada Anda cara memformat tanggal di Excel menggunakan VBA .
Unduh Buku Kerja
Anda bisa mengunduh buku kerja Excel latihan gratis dari sini.
Format Tanggal dengan VBA.xlsm
4 Metode untuk Memformat Tanggal di Excel dengan VBA
Lihatlah contoh berikut ini. Kita menyimpan tanggal yang sama di kedua Kolom B dan C sehingga ketika kita memformat tanggal di Kolom C Anda akan tahu dari B Kolom dalam format tanggal yang mana sebelumnya.
1. VBA untuk Memformat Tanggal dari Satu Jenis ke Jenis Lainnya di Excel
Pertama, mari kita ketahui cara memformat tanggal dari Sel C5 dalam dataset yang kami berikan dengan VBA untuk " Selasa-Januari-2022 ".
Langkah-langkah:
- Tekan Alt + F11 pada keyboard Anda atau buka tab Pengembang -> Visual Basic untuk membuka Editor Visual Basic .
- Di jendela kode pop-up, dari bilah menu, klik Sisipkan -> Modul .
- Salin kode berikut ini dan tempelkan ke jendela kode.
Sub DateFormat() Range("C5").NumberFormat = "dddd-mmmm-yyyy" 'Ini akan memformat tanggal menjadi "Selasa-Januari-2022" End Sub
Kode Anda sekarang siap untuk dijalankan.
- Tekan F5 pada keyboard Anda atau dari bilah menu pilih Jalankan -> Jalankan Sub/UserForm Anda juga bisa mengklik pada ikon Putar kecil di bilah sub-menu untuk menjalankan makro.
Kode ini akan memformat tanggal " 11-01-22 " menjadi " Selasa-Januari-2022 ".
Anda juga dapat mengubah format tanggal ini ke dalam banyak format lainnya. Cukup ikuti kode di bawah ini untuk mengubah tanggal ke dalam format yang Anda butuhkan.
Sub FormatDate() 'Tanggal Asli adalah "11-01-22" Range("C5").NumberFormat = "dd-mm-yyy" 'Ini akan memformat tanggal menjadi "11-01-2022" Range("C6").NumberFormat = "ddd-mm-yyy" 'Ini akan memformat tanggal menjadi "Tue-11-2022" Range("C7").NumberFormat = "dddd-mm-yyy" 'Ini akan memformat tanggal menjadi "Tuesday-11-2022" Range("C8").NumberFormat = "dd-mmm-yyy" 'Ini akan memformat tanggal menjadi"11-Jan-2022" Range("C9").NumberFormat = "dd-mmmm-yyy" 'Ini akan memformat tanggal menjadi "11-Januari-2022" Range("C10").NumberFormat = "dd-mm-yy" 'Ini akan memformat tanggal menjadi "11-01-22" Range("C11").NumberFormat = "ddd mmm yyyy" 'Ini akan memformat tanggal menjadi "Tue Jan 2022" Range("C12").NumberFormat = "dddd mmmm yyyy" 'Ini akan memformat tanggal menjadi "Selasa Januari 2022" End Sub
Ikhtisar
Baca selengkapnya: Sekarang dan Format Fungsi di Excel VBA
2. Sematkan VBA untuk Mengonversi Tanggal dengan Fungsi FORMAT
Excel memiliki nomor serinya sendiri mengenai tanggal individual. Jika Anda ingin mengetahui nomor seri dari setiap
tanggal tertentu, Anda harus mendaftar fungsi DATEVALUE .
Misalkan, Anda ingin mengetahui nomor seri tanggal " 11 Januari 2022 ", maka Anda perlu menulis rumus sebagai,
=DATEVALUE("11 Januari 2022")
Excel akan memberi Anda nomor seri 44572 dari tanggal ini.
Sekarang, kita akan mengubah angka ini ke dalam format tanggal yang relevan.
Langkah-langkah:
- Cara yang sama seperti sebelumnya, buka Editor Visual Basic dari Pengembang tab dan Sisipkan a Modul di jendela kode.
- Di jendela kode, salin kode berikut dan tempelkan.
Sub Format_Tanggal() Dim iTanggal As Varian iTanggal = 44572 'Nomor seri Excel dari tanggal "11 Januari 2022" MsgBox Format(iTanggal, "DD-MMMM-YYYY") End Sub
Kode Anda sekarang siap untuk dijalankan.
Anda akan mendapatkan tanggal " 11 Januari 2022 " dalam kotak pesan.
Baca lebih lanjut: Cara Menggunakan Fungsi VBA DateValue di Excel
Bacaan Serupa
- Cara Memasukkan Tanggal Sekarang di Excel (3 Cara)
- Variabel Tanggal dalam Kode VBA (7 Penggunaan Makro dengan Contoh)
- Dapatkan Tanggal Saat Ini di VBA (3 Cara)
- Cara Menggunakan Pintasan Tanggal Excel
3. VBA untuk Mengubah Tanggal Berdasarkan Bagian Tertentu di Excel
Misalkan, Anda ingin memformat bagian tertentu dari tanggal, misalnya, hanya hari/bulan/tahun, maka tulis kodenya sebagai,
Sub Date_Format() Range("C5").NumberFormat = "mmmm" 'Ini akan memformat tanggal menjadi "Januari" End Sub
Kode Anda sekarang siap untuk dijalankan.
" mmmm " dalam kode ini berarti bentuk panjang dari nama bulan.
Karena tanggalnya adalah " 11 Januari 2022 " sehingga potongan kode ini akan mengembalikan " Januari ".
Anda dapat Menerapkan kode ini untuk memformat dan mengekstrak bagian tertentu yang Anda inginkan dari tanggal.
Sub FormatDateValue() 'Tanggal Asli adalah "11-01-22" Range("C5").NumberFormat = "dd" 'Ini akan memformat tanggal menjadi "11" Range("C6").NumberFormat = "ddd" 'Ini akan memformat tanggal menjadi "Tue" Range("C7").NumberFormat = "dddd" 'Ini akan memformat tanggal menjadi "Selasa" Range("C8").NumberFormat = "m" 'Ini akan memformat tanggal menjadi "1" Range("C9").NumberFormat = "mm" 'Ini akanformat tanggal menjadi "01" Range("C10").NumberFormat = "mmm" 'Ini akan memformat tanggal menjadi "Jan" Range("C11").NumberFormat = "yy" 'Ini akan memformat tanggal menjadi "22" Range("C12").NumberFormat = "yyyy" 'Ini akan memformat tanggal menjadi "2022" Range("C13").NumberFormat = "dd-mm" 'Ini akan memformat tanggal menjadi "11-01" Range("C14").NumberFormat = "mm-yyy" 'Ini akan memformat tanggaldate to "01-2022" Range("C15").NumberFormat = "mmm-yyy" 'Ini akan memformat tanggal ke "Jan-2022" Range("C16").NumberFormat = "dd-yy" 'Ini akan memformat tanggal ke "11-22" Range("C17").NumberFormat = "ddd yyyy" 'Ini akan memformat tanggal ke "Tue 2022" Range("C18").NumberFormat = "dddd-yyyy" 'Ini akan memformat tanggal ke "Tuesday-2022" Range("C19").NumberFormat = "dd-mmm"'Ini akan memformat tanggal menjadi "11-Jan" Range("C20").NumberFormat = "dddd-mmmm" 'Ini akan memformat tanggal menjadi "Selasa-Januari" End Sub
Ikhtisar
4. Sisipkan VBA untuk Memformat Tanggal di Lembar Kerja Tertentu di Excel
Jika Anda ingin memformat tanggal berdasarkan lembar kerja tertentu, maka pertama-tama Anda perlu mengatur nama lembar kerja dalam kode, lalu format tanggal sesuai dengan jenis yang Anda butuhkan.
- Terbuka Editor Visual Basic dari Pengembang tab dan Sisipkan a Modul di jendela kode.
- Di jendela kode, salin kode berikut dan tempelkan.
Sub Format_Tanggal() Dim iSheet As Lembar Kerja Set iSheet = ThisWorkbook.Sheets("Example") 'Atur lembar kerja bernama "Example" iSheet.Range("C5").NumberFormat = "dddd, mmmmdd, yyyy" End Sub
Kode Anda sekarang siap untuk dijalankan.
Lihatlah baris ke-3 kode di mana pertama-tama kita menetapkan " Contoh " lembar kerja kemudian memformat tanggal lembar Excel tertentu itu.
Kesimpulan
Artikel ini menunjukkan kepada Anda cara memformat tanggal di Excel dengan VBA Saya harap artikel ini sangat bermanfaat bagi Anda. Jangan ragu untuk bertanya jika Anda memiliki pertanyaan mengenai topik ini.