Fungsi Excel Week VBA
Hari kerja di VBA adalah fungsi tarikh dan waktu yang digunakan untuk mengenal pasti hari kerja pada tarikh tertentu asalkan ia sebagai input, fungsi ini mengembalikan nilai integer dari julat 1 hingga 7, ada argumen pilihan yang disediakan untuk fungsi ini yang hari pertama dalam seminggu tetapi jika kita tidak menyediakan hari pertama dalam seminggu, maka fungsi tersebut menganggap hari Ahad sebagai hari pertama dalam seminggu secara lalai.
Bolehkah kita memberitahu nombor hari minggu dengan melihat tarikh tertentu? Ya, kita dapat memberitahu bilangan hari pada minggu itu, bergantung pada hari permulaan dalam seminggu. Dalam fungsi lembaran kerja biasa, kita mempunyai fungsi yang disebut WEEKDAY in excel untuk memberitahu jumlah minggu untuk tarikh tertentu. Di VBA juga, kita mempunyai fungsi yang sama untuk mencari perkara yang sama.

Apa yang dilakukan oleh Fungsi Hari Minggu?
Fungsi hari kerja mengembalikan nombor hari tarikh yang disediakan dalam seminggu. Sebagai contoh, jika anda mempunyai tarikh 01 st April hingga 07 th April dan jika anda ingin mengetahui hari dari tarikh 05 th April jika hari bermula dalam seminggu adalah hari Isnin, ia adalah 5 ke hari.
Untuk mendapatkannya, kita memiliki fungsi yang sama dengan "Weekday" di lembaran kerja dan juga di VBA. Berikut adalah sintaks fungsi.

Tarikh: Untuk tarikh mana kita berusaha mencari hari kerja. Ini mestilah tarikh yang tepat dengan format yang betul.
(Hari Pertama Minggu): Untuk menentukan hari minggu dari Tarikh yang disediakan , kita perlu menyebutkan apa hari pertama dalam seminggu. Secara lalai, VBA menganggap "Isnin" sebagai hari permulaan dalam seminggu. Selain daripada ini, kami juga dapat menyediakan hari-hari di bawah.

Contoh
Contoh # 1
Untuk memulakan prosiding, izinkan saya memulakan dengan contoh mudah terlebih dahulu. Sekarang kita akan berusaha mencari hari kerja untuk tarikh "10-April-2019".
Langkah 1: Tentukan pemboleh ubah sebagai String
Kod:
Sub Hari Minggu_Contoh1 () Dim k Sebagai Subang Akhir Hujung

Langkah 2: Berikan nilai kepada pemboleh ubah
Tetapkan nilai ke pemboleh ubah "k" dengan menerapkan fungsi WEEKDAY.
Kod:
Sub Hari Minggu_Contoh1 () Dim k Sebagai Rentetan k = Hari Minggu (Sub Akhir

Langkah 3: Masukkan Tarikh dalam Fungsi
Tarikh yang kami uji di sini adalah "10-Apr-2019", jadi lulus tarikhnya sebagai "10-Apr-2019".
Kod:
Sub Hari Minggu_Contoh1 () Dim k Sebagai Rentetan k = Hari Minggu ("10-Apr-2019" Sub Akhir

Langkah 4: Tunjukkan Nilai Pembolehubah di MsgBox
Secara lalai, ia memerlukan hari pertama dalam seminggu sebagai "Isnin", jadi abaikan bahagian ini. Tutup pendakap. Baris seterusnya menunjukkan nilai pemboleh ubah "k" di kotak mesej VBA.
Kod:
Sub Hari Minggu_Contoh1 () Dim k Sebagai Rentetan k = Hari Minggu ("10-Apr-2019") MsgBox k Akhir Sub

Ok, kita sudah selesai.
Sekiranya kita menjalankan kod, kita akan mendapat hasilnya sebagai "4" kerana mulai dari hari Ahad, tarikh yang disediakan (10-Apr-2019) jatuh pada hari ke- 4 dalam seminggu.
Catatan: Hari permulaan sistem saya dalam seminggu adalah "Ahad."
Begitu juga, jika anda mengubah hari permulaan dalam seminggu, ia tetap berbeza. Di bawah adalah garis contoh untuk perkara yang sama.
Kod:
k = Hari Minggu ("10-Apr-2019", vbMonday) 'Ini mengembalikan 3 k = Hari minggu ("10-Apr-2019", vbTuesday)' Ini mengembalikan 2 k = Hari kerja ("10-Apr-2019", vbWednesday) 'Ini mengembalikan 1 k = Hari Minggu ("10-Apr-2019", vbThursday)' Ini mengembalikan 7 k = Hari minggu ("10-Apr-2019", vbFriday) 'Ini mengembalikan 6 k = Hari Minggu ("10-Apr-2019 ", vbSaturday) 'Ini mengembalikan 5 k = Hari kerja (" 10-Apr-2019 ", vbSunday)' Ini mengembalikan 4
Contoh # 2 - Tiba Sama ada Tarikh pada hujung minggu atau tidak
Andaikan anda mempunyai tarikh seperti di bawah, dan anda ingin mencari tarikh hujung minggu seterusnya, maka kita boleh menggunakan fungsi WEEKDAY untuk sampai pada hasilnya.

Kita perlu menggunakan WEEKDAY dengan keadaan JIKA dan gelung untuk mendapatkan hasilnya. Saya telah menulis kod untuk anda pergi baris demi baris untuk mendapatkan logiknya.
Kod:
SubHujung Minggu_Tarikh () Dim k Sebagai Integer Untuk k = 2 Hingga 9 Jika Hari Minggu (Sel (k, 1). Nilai, vb Isnin) = 1 Sel Kemudian (Sel (k, 1). Nilai, vb Isnin) = 2 Kemudian Sel (k, 2). Nilai = Sel (k, 1) + 4 ElseIf Weekday (Sel (k, 1). Nilai, vbMonday) = 3 Kemudian Sel (k, 2). Nilai = Sel (k, 1) + 3 ElseIf Weekday (Sel (k, 1). Nilai, vbMonday) = 4 Kemudian Sel (k, 2). Nilai = Sel (k, 1) + 2 ElseIf Weekday (Sel (k, 1). Nilai, vb Isnin) = 5 Kemudian Sel (k, 2). Nilai = Sel (k, 1) + 1 Sel Lain (k, 2). Nilai = "Ini sebenarnya hujung minggu Tarikh "Tamat Jika Selanjutnya k Akhir Sub

Ini akan sampai pada keputusan di bawah.

Lihat sel B6 & B7. Kami mendapat hasilnya sebagai "Ini sebenarnya tarikh hujung minggu" kerana tarikh "04-Mei-2019" dan "06-Apr-2019" sebenarnya adalah tarikh hujung minggu, jadi tidak perlu menunjukkan tarikh hujung minggu untuk tarikh akhir pekan. Secara lalai, kami mendapat hasilnya seperti ini.