Ngày Thêm Mô tả
Chức năng VBA DateAdd cho phép bạn thêm (hoặc trừ) ngày, tháng, năm, giờ, quý, v.v. vào Ngày hoặc Giờ.
Ví dụ về Ngày Thêm đơn giản
Đây là một ví dụ DateAdd đơn giản:
123 | Sub DateAdd_Day ()MsgBox DateAdd ("d", 20, # 4/1/2021 #)Kết thúc Sub |
Mã này sẽ thêm 20 ngày (được biểu thị bằng “d”) vào ngày 4/1/2021:
Thay vào đó, chúng ta có thể thay đổi đối số Khoảng thời gian từ “d” thành “m” để thêm 20 tháng vào ngày 4/1/2021:
123 | Sub DateAdd_Month ()MsgBox DateAdd ("m", 20, # 4/1/2021 #)Kết thúc Sub |
Thay vì hiển thị ngày trong hộp thông báo, chúng ta có thể gán ngày đó cho một biến:
123456 | Sub DateAdd_Day2 ()Dim dt as Datedt = DateAdd ("d", 20, # 4/1/2021 #)MsgBox dtKết thúc Sub |
Cú pháp DateAdd
Trong VBA Editor, bạn có thể nhập “DateAdd (” để xem cú pháp của Hàm DateAdd:
Hàm DateAdd chứa 3 đối số:
Khoảng thời gian: Đơn vị thời gian (Ngày, Tháng, Năm, v.v.). Nhập dưới dạng chuỗi. (ví dụ: “m” cho Tháng)
Thiết lập | Sự miêu tả |
---|---|
yyyy | Năm |
NS | Phần tư |
NS | Tháng |
y | Ngày trong năm |
NS | Ngày |
w | Ngày trong tuần |
đệ | Tuần |
NS | Giờ |
n | Phút |
NS | Thứ hai |
Con số: Giá trị số đại diện cho số lượng đơn vị thời gian cần thêm. (ví dụ: 20 để thêm 20 đơn vị)
Ngày: Ngày ban đầu. Xem phần tiếp theo.
Lập trình VBA | Code Generator làm việc cho bạn!
Ví dụ về hàm DateAdd trong Excel VBA
Ngày tham chiếu
Để bắt đầu, chúng tôi sẽ trình bày các cách khác nhau để tham chiếu ngày bằng Hàm VBA DateAdd.
Mỗi hàm DateAdd này tạo ra cùng một kết quả:
123456789 | Sub DateAdd_ReferenceDates ()MsgBox DateAdd ("m", 2, # 4/1/2021 #)MsgBox DateAdd ("m", 2, DateSerial (2021, 4, 1))MsgBox DateAdd ("m", 2, DateValue ("ngày 1 tháng 4 năm 2022"))Kết thúc Sub |
Hoặc bạn có thể tham chiếu ô chứa ngày tháng:
12345 | Sub DateAdd_ReferenceDates_Cell ()MsgBox DateAdd ("m", 2, Phạm vi ("C2"). Giá trị)Kết thúc Sub |
Hoặc tạo và tham chiếu một biến ngày:
12345678 | Sub DateAdd_Variable ()Dim dt As Datedt = # 4/1/2021 #MsgBox DateAdd ("m", 2, dt)Kết thúc Sub |
Thêm hoặc trừ ngày
Chúng tôi đã chỉ cho bạn cách thêm ngày:
123456 | Sub DateAdd_Day2 ()Dim dt as Datedt = DateAdd ("d", 20, # 4/1/2021 #)MsgBox dtKết thúc Sub |
Bạn có thể trừ các ngày bằng cách sử dụng một số âm (ví dụ: -20 thay vì 20):
123456 | Sub DateAdd_Day ()Dim dt as Datedt = DateAdd ("d", -20, # 4/1/2021 #)MsgBox dtKết thúc Sub |
Bạn mệt mỏi với việc tìm kiếm ví dụ về mã VBA? Hãy thử AutoMacro!
Thêm các đơn vị thời gian khác nhau
Năm
123 | Sub DateAdd_Years ()MsgBox DateAdd ("yyyy", 4, # 4/1/2021 #)Kết thúc Sub |
Phần tư
123 | Sub DateAdd_Quarters ()MsgBox DateAdd ("q", 2, # 4/1/2021 #)Kết thúc Sub |
Tháng
123 | Sub DateAdd_Months ()MsgBox DateAdd ("m", 2, # 4/1/2021 #)Kết thúc Sub |
Ngày trong năm
123 | Sub DateAdd_DaysofYear ()MsgBox DateAdd ("y", 2, # 4/1/2021 #)Kết thúc Sub |
Ngày
123 | Sub DateAdd_Days3 ()MsgBox DateAdd ("d", 2, # 4/1/2021 #)Kết thúc Sub |
Ngày trong tuần
123 | Sub DateAdd_Weekdays ()MsgBox DateAdd ("w", 2, # 4/1/2021 #)Kết thúc Sub |
Tuần
123 | Sub DateAdd_Weeks ()MsgBox DateAdd ("ww", 2, # 4/1/2021 #)Kết thúc Sub |
Lập trình VBA | Code Generator làm việc cho bạn!
Thêm vào hôm nay
Những ví dụ này sẽ thêm đơn vị thời gian cho ngày hôm nay bằng cách sử dụng Hàm ngày.
123456789 | Sub DateAdd_Year_Test ()Dim dtToday As DateDim dtLater As DatedtToday = NgàydtLater = DateAdd ("yyyy", 1, dtToday)MsgBox "Một năm sau là" & dtLaterKết thúc Sub |
123 | Sub DateAdd_Quarter_Test ()MsgBox "2 quý sau là" & DateAdd ("q", 2, Date)Kết thúc Sub |
Thêm và trừ thời gian
Chức năng DateAdd cũng hoạt động với Times. Dưới đây là một số ví dụ về cộng (hoặc trừ) thời gian cho một thời gian:
Giờ
Ví dụ này sẽ thêm 2 giờ vào một thời gian:
123 | Sub DateAdd_Hour ()MsgBox DateAdd ("h", 2, # 4/1/2021 6: 00: 00 #)Kết thúc Sub |
Phút
Ví dụ này sẽ trừ đi 120 phút cho Thời gian hiện tại:
123 | Sub DateAdd_Minute_Subtract ()MsgBox DateAdd ("n", -120, Now)Kết thúc Sub |
Thứ hai
123 | Sub DateAdd_Second ()MsgBox DateAdd ("s", 2, # 4/1/2021 6: 00: 00 #)Kết thúc Sub |
Định dạng ngày
Khi ngày (hoặc giờ) được hiển thị trong Excel, UserForms hoặc Hộp thư, bạn nên chỉ ra cách ngày tháng sẽ được hiển thị bằng cách sử dụng Hàm Định dạng. Chúng tôi đã bao gồm một số ví dụ bên dưới:
123456789101112131415161718 | Sub FormattingDatesTimes ()'Trả về ngày và giờ hiện tạidt = Bây giờ ()'Ví dụ. 07/02/2021Range ("B2") = Định dạng (dt, "mm / dd / yyyy")'Ví dụ. Ngày 2 tháng 7 năm 2022Phạm vi ("B3") = Định dạng (dt, "mmmm d, yyyy")'Ví dụ. 2 tháng 7 năm 2022 09:10Range ("B4") = Định dạng (dt, "mm / dd / yyyy hh: mm")'Ví dụ. 7.2.21 9:10 sángRange ("B5") = Định dạng (dt, "m.d.yy h: mm AM / PM")Kết thúc Sub |