Fungsi DateBart VBA - Bagaimana Mengembalikan Bahagian Tarikh yang Ditentukan?

Fungsi Excel VBA DatePart

DatePart dalam VBA digunakan untuk mengenal pasti bahagian tarikh untuk tarikh yang diberikan sebagai argumen, bahagian tarikh boleh menjadi hari atau bulan atau tahun atau bahkan jam minit dan saat, sintaks fungsi ini sangat menjelaskan dirinya sendiri dan ia adalah seperti berikut, Datepart (Interval, Date as Argument).

Sintaks

Sintaks fungsi DatePart diberikan di bawah:

  • Selang: Data yang akan dilalui dalam argumen selang adalah jenis rentetan, yang bermaksud argumen ini dapat berisi nilai yang valid di dalamnya. Selang mungkin dari tahun, bulan, suku, hari, minggu, jam, minit, kedua.
  • Tarikh: Nilai tarikh yang perlu dinilai.
  • firstdayofweek: Ini adalah parameter pilihan. Ini menggambarkan hari pertama dalam seminggu. Perkara ini malah boleh diabaikan. Sekiranya parameter ini diabaikan, ini secara automatik mengambil hari Ahad sebagai hari pertama dalam seminggu. Sekiranya anda ingin mengubahnya, maka parameter ini dapat digunakan. Hujah ini mungkin terdiri daripada vbUseSystem 0.

Gunakan tetapan NLS API

vbSunday (Default), vbMonday, vbTuesday, vbWednesday, vbThursday vbFriday, vbSaturday.
  • firstweekofyear: Begitu juga, parameter teratas, ini juga merupakan parameter pilihan. Ini menggambarkan minggu pertama tahun ini. Parameter ini juga dapat diabaikan. Sekiranya parameter ini diabaikan, ia menganggap bahawa 1 Januari sebagai minggu pertama tahun ini. Sekiranya anda ingin mengubahnya, maka parameter ini dapat digunakan.
    Hujah ini mungkin terdiri daripada nilai berikut.
    vbUseSystem, vbFirstJan1, vbFirstFourDays, vbFirstFullWeek.

Setelah memberikan semua parameter, bahagian data () akan mengembalikan nilai berangka seperti tarikh keseluruhan atau tahun atau bulan atau suku, dll. Oleh itu jenis pengembalian fungsi ini akan menjadi nilai angka.

Bagaimana cara menggunakan Fungsi DatePart dalam VBA?

Contoh # 1

Contoh Pertama ialah memaparkan tarikh lengkap dan suku bulan itu juga.

Untuk mencapainya, kita perlu menulis beberapa kod dalam Visual Basic untuk Tab Pembangun Goto itu dan kemudian klik pada Visual Basic, dan kemudian tetingkap akan dibuka.

Di tetingkap itu, tulis kod seperti gambar di bawah.

Kod:

Sub date_Datepart () Dim mydate As Variant mydate = # 12/25/2019 # MsgBox mydate MsgBox DatePart ("q", mydate) 'memaparkan Sub Akhir suku

Dalam contoh ini, kami telah menggunakan fungsi bahagian data untuk memaparkan tarikh dan beberapa bahagian tarikh yang merupakan seperempat tarikh. Ini menunjukkan suku tahun mana tarikh masuknya.

Sekiranya kita menyahpepijat kod, tarikh akan dipaparkan sebagai tarikh lengkap pertama kali apabila kod melaksanakan "Msgbox mydate" kerana tarikh rawak diberikan pada pemboleh ubah "mydate".

Seterusnya, kami memaparkan suku tahun mana tarikh tersebut.

Apabila anda menjalankan kod secara manual atau menggunakan kekunci pintas F5, maka tarikh akan dipaparkan seperti yang ditunjukkan setelah mengklik ok. Seterusnya, suku tarikh akan dipaparkan. Ini dapat ditunjukkan dalam tangkapan skrin di bawah.

Begitu juga, Quarter, hanya tarikh atau bulan atau tahun juga dapat dipaparkan.

Contoh # 2

Dalam contoh ini, saya akan memasukkan tarikh secara manual pada waktu berjalan.

Kod:

Sub date1_datePart () Dim TodayDate As Date 'Menyatakan pemboleh ubah. Dim Msg TodayDate = InputBox ("Masukkan tarikh:") Msg = "Quarter:" & DatePart ("q", TodayDate) MsgBox Msg End Sub

Di sini dalam contoh ini, kami berusaha mendapatkan tarikh secara manual pada waktu berjalan. Kod "TodayDate = InputBox (" Masukkan tarikh: ")" baris ini menunjukkan bahawa tarikh boleh dimasukkan secara manual,

Setelah memasukkan tarikh secara manual, ia memaparkan Suku Tarikh dalam Kotak mesej. Ini dapat ditunjukkan dalam tangkapan skrin di bawah.

Oleh kerana bulan Jun berada pada suku ke-2, ini memaparkan Suku Kedua , seperti yang ditunjukkan dalam tangkapan skrin di atas.

Contoh # 3

Dalam contoh ini, semua nilai akan diisi dalam sel.

Kod:

Buku Kerja Sub Peribadi_Buka () Dim DummyDate As Date DummyDate = ActiveSheet.Cells (2, 2) ActiveSheet.Cells (2, 2). Value = Day (DummyDate) ActiveSheet.Cells (3, 2). Value = Hour (DummyDate) ActiveSheet .Cells (4, 2). Value = Minute (DummyDate) ActiveSheet.Cells (5, 2). Value = Month (DummyDate) ActiveSheet.Cells (6, 2). Value = Weekday (DummyDate) End Sub

The dates are filled in the cells in the excel sheet, for that the code is written as Active Sheet.cells. By this code, the date which is present maybe a year, month, or date can be inserted into the given cells.

For example, in the above screenshot,

The day is to be inserted in the cells ( 2, 2) of the excel sheet. Hence the code is written as “ ActiveSheet.Cells(2, 2).Value = Day(DummyDate) “ .

Run the code using the F5 key or manually, and the result would be as shown below.

It is, by default taking date today, and it is displaying as 30 in (2,6) cell.

Likewise, for all the other data also it can be filled.

Usage of DatePart Function

  • DatePart function can be used to display the part of the date as the name indicates, i.e., if only day or month or year of the date needs to be displayed, then this function can be used.
  • Fungsi ini juga memisahkan tarikh, bulan, dan satu tahun dari tarikh tertentu.
  • Dengan menggunakan fungsi ini, tarikh tidak hanya dipisahkan. Kita juga boleh mendapatkan suku, hari, jam, minit, dan satu saat.

Perkara yang Perlu Diingat

  • Fungsi ini hanya dapat digunakan sebagai Fungsi VBA. Dalam excel biasa, ini tidak boleh digunakan.
  • Tarikh yang diberikan sebagai nilai dalam fungsi ini dapat diberikan dalam format apa pun seperti format mm-dd-yyyy atau format DD-MM-YYYY dll.
  • Fungsi ini akan memisahkan semua nilai secara berasingan, seperti tarikh, bulan, tahun, atau waktu juga satu jam, minit, saat juga.
  • Ini disusun di bawah Fungsi Tarikh dan Waktu di VBA Microsoft Excel.

Artikel menarik...