Vba: cara mengubah nomor tanggal menjadi minggu
Anda dapat menggunakan sintaks dasar berikut di VBA untuk mengubah tanggal menjadi angka minggu:
Sub FindWeekNumber()
Dim i As Integer
For i = 2 To 9
Range(" B " & i) = WorksheetFunction.WeekNum(Range(" A " & i))
Next i
End Sub
Contoh khusus ini akan menemukan nomor minggu untuk setiap tanggal dalam rentang A2:A9 dan menampilkan hasilnya dalam rentang B2:B9 .
Perhatikan bahwa metode VBA WeekNum mengasumsikan bahwa minggu dimulai pada hari Minggu.
Untuk menentukan hari lain sebagai awal minggu, Anda dapat menambahkan argumen kedua ke metode WeekNum :
Sub FindWeekNumber()
Dim i As Integer
For i = 2 To 9
Range(" B " & i) = WorksheetFunction.WeekNum(Range(" A " & i), vbMonday)
Next i
End Sub
Contoh berikut menunjukkan cara menggunakan metode WeekNum untuk mengonversi tanggal menjadi angka minggu dalam praktiknya.
Contoh: ubah tanggal menjadi nomor minggu di VBA
Misalkan kita memiliki kolom tanggal berikut di Excel:
Misalkan kita ingin mengubah setiap tanggal menjadi nomor minggu dan menampilkan nomor minggu di kolom B.
Kita dapat membuat makro berikut untuk melakukan ini:
Sub FindWeekNumber()
Dim i As Integer
For i = 2 To 9
Range(" B " & i) = WorksheetFunction.WeekNum(Range(" A " & i))
Next i
End Sub
Saat kami menjalankan makro ini, kami menerima keluaran berikut:
Kolom B menampilkan nomor minggu untuk setiap tanggal di kolom A, dengan asumsi minggu dimulai pada hari Minggu.
Jika Anda ingin menentukan hari lain sebagai awal minggu, misalnya Senin, Anda dapat menggunakan sintaks berikut:
Sub FindWeekNumber()
Dim i As Integer
For i = 2 To 9
Range(" B " & i) = WorksheetFunction.WeekNum(Range(" A " & i), vbMonday)
Next i
End Sub
Saat kami menjalankan makro ini, kami menerima keluaran berikut:
Kolom B sekarang menampilkan nomor minggu untuk setiap tanggal di kolom B, dengan asumsi minggu dimulai pada hari Senin.
Catatan : Anda dapat menemukan dokumentasi lengkap untuk metode VBA WeekNum di sini .
Sumber daya tambahan
Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di VBA:
Bagaimana membandingkan tanggal di VBA
Bagaimana mengkonversi string ke tanggal di VBA
Cara menghitung hari antara dua tanggal di VBA