Trong hướng dẫn này, chúng ta sẽ đi qua các Hàm ngày VBA tích hợp sẵn khác nhau.
Hàm ngày VBA
Bạn có thể sử dụng Hàm Date để trả về ngày hiện tại.
Cú pháp của Hàm Date là Date (). Nó không có đối số.
Đoạn mã sau cho bạn biết cách sử dụng Hàm Ngày:
12345678 | Sub usingTheDateFunction ()Làm mờ ngày như ngàytheDate = Date ()Debug, in theDateKết thúc Sub |
Kết quả là:
Chức năng VBA Now
Bạn có thể sử dụng Hàm Now để trả về ngày và giờ hiện tại.
Cú pháp của Hàm Now là Now (). Nó không có đối số.
Đoạn mã sau chỉ cho bạn cách sử dụng Hàm Now:
12345678 | Sub usingTheNowFunction ()Làm mờ ngày như ngàytheDate = Now ()Debug, in theDateKết thúc Sub |
Kết quả là:
Chức năng thời gian VBA
Bạn có thể sử dụng Chức năng Thời gian để trả về thời gian hiện tại.
Cú pháp của Hàm thời gian là Time (). Nó không có đối số.
Đoạn mã sau cho bạn biết cách sử dụng Hàm thời gian:
12345678 | Sub usingTheTimeFunction ()Giảm thời gian như ngàytheTime = Thời gian ()Debug.Print theTimeKết thúc Sub |
Kết quả là:
Hàm DateAdd VBA
Bạn có thể sử dụng Hàm DateAdd để thêm khoảng ngày / giờ vào một ngày hoặc giờ và hàm sẽ trả về ngày / giờ kết quả.
Cú pháp của Hàm DateAdd là:
DateAdd (Khoảng thời gian, Số, Ngày) trong đó:
- Khoảng thời gian - Một chuỗi chỉ định loại khoảng thời gian sẽ sử dụng. Khoảng thời gian có thể là một trong các giá trị sau:
“D” - ngày
“Ww” - tuần
“W” - ngày trong tuần
“M” - tháng
“Q” - quý
“Yyyy” - năm
“Y” - ngày trong năm
“H” - giờ
“N” - phút
“S” - giây
- Số - Số khoảng thời gian mà bạn muốn thêm vào ngày / giờ ban đầu.
- Ngày tháng - Ngày / giờ ban đầu.
Lưu ý: Khi sử dụng ngày tháng trong mã của bạn, bạn phải đặt chúng bằng # hoặc dấu ngoặc kép.
Đoạn mã sau đây cho thấy cách sử dụng Hàm DateAdd:
123456789 | Sub usingTheDateAddFunction ()Làm mờ sau đó Ngày như ngàylaterDate = DateAdd ("m", 10, "11/12/2019")Gỡ lỗi. In sau NgàyKết thúc Sub |
Kết quả là:
Hàm DateDiff trong VBA
Bạn có thể sử dụng Hàm DateDiff để nhận được sự khác biệt giữa hai ngày, dựa trên một khoảng thời gian cụ thể.
Cú pháp của Hàm DateDiff là:
DateDiff (Khoảng thời gian, Date1, Date2, [Firstdayofweek], [Firstweekofyear]) trong đó:
- Khoảng thời gian - Một chuỗi chỉ định loại khoảng thời gian sẽ sử dụng. Khoảng thời gian có thể là một trong các giá trị sau:
“D” - ngày
“Ww” - tuần
“W” - ngày trong tuần
“M” - tháng
“Q” - quý
“Yyyy” - năm
“Y” - ngày trong năm
“H” - giờ
“N” - phút
“S” - thứ hai
- Date1 - Giá trị ngày đại diện cho ngày trước đó.
- Date2 - Giá trị ngày đại diện cho ngày sau đó.
- Ngày đầu tuần (Không bắt buộc) - Hằng số chỉ định ngày trong tuần mà hàm sẽ sử dụng làm ngày đầu tiên trong tuần. Nếu chủ nhật trống được sử dụng làm ngày đầu tiên trong tuần. Firstdayofweek có thể là một trong các giá trị sau:
-vbSunday - sử dụng Chủ nhật là ngày đầu tiên trong tuần.
-vbMonday - sử dụng thứ Hai làm ngày đầu tiên trong tuần.
-vbTuesday - sử dụng thứ Ba làm ngày đầu tiên trong tuần.
-vbWednesday - sử dụng thứ Tư là ngày đầu tiên trong tuần.
-vbThursday - sử dụng thứ Năm làm ngày đầu tiên trong tuần.
-vbFriday - sử dụng thứ Sáu làm ngày đầu tiên trong tuần.
-vbSaturday - sử dụng thứ Bảy làm ngày đầu tiên trong tuần.
-vbUseSystemDayOfTheWeek - sử dụng ngày đầu tiên trong tuần do cài đặt hệ thống của bạn chỉ định.
- Firstweekofyear (Không bắt buộc) - Hằng số xác định tuần đầu tiên của năm. Nếu để trống thì tuần 1 tháng 1 được sử dụng làm tuần đầu tiên của năm. Firstweekofyear có thể là một trong các giá trị sau:
-vbFirstJan1 - sử dụng tuần có chứa ngày 1 tháng 1.
-vbFirstFourDays - sử dụng tuần đầu tiên có ít nhất bốn ngày trong năm mới.
-vbFirstFullWeek - sử dụng tuần đầu tiên trong năm.
-vbSystem - sử dụng tuần đầu tiên của năm như được chỉ định bởi cài đặt hệ thống của bạn.
Đoạn mã sau chỉ cho bạn cách sử dụng Hàm DateDiff:
123456789 | Sub usingTheDateDiffFunction ()Dim theDifferenceBetweenTwoDates As LongtheDifferenceBetweenTwoDates = DateDiff ("q", "11/11/2010", "10/12/2012")Debug.Print theDifferenceBetweenTwoDatesKết thúc Sub |
Kết quả là:
Hàm DatePart trong VBA
Bạn có thể sử dụng Hàm DatePart để trả về một phần (ngày, tuần, quý, tháng, v.v.) của một ngày nhất định.
Cú pháp của Hàm DatePart là:
DatePart (Khoảng thời gian, Ngày, [Firstdayofweek], [Firstweekofyear]) trong đó:
- Khoảng thời gian - Một chuỗi chỉ định một phần của ngày tháng sẽ trả về. Khoảng thời gian có thể là một trong các giá trị sau:
“D” - ngày
“Ww” - tuần
“W” - ngày trong tuần
“M” - tháng
“Q” - quý
“Yyyy” - năm
“Y” - ngày trong năm
“H” - giờ
“N” - phút
“S” - giây
- Ngày - Ngày mà bạn muốn hàm trả về một phần.
- Ngày đầu tuần (Không bắt buộc) - Hằng số chỉ định ngày trong tuần mà hàm sẽ sử dụng làm ngày đầu tiên trong tuần. Nếu chủ nhật trống được sử dụng làm ngày đầu tiên trong tuần. Firstdayofweek có thể là một trong các giá trị sau:
-vbSunday - sử dụng Chủ nhật là ngày đầu tiên trong tuần.
-vbMonday - sử dụng thứ Hai làm ngày đầu tiên trong tuần.
-vbTuesday - sử dụng thứ Ba làm ngày đầu tiên trong tuần.
-vbWednesday - sử dụng thứ Tư là ngày đầu tiên trong tuần.
-vbThursday - sử dụng thứ Năm làm ngày đầu tiên trong tuần.
-vbFriday - sử dụng thứ Sáu làm ngày đầu tiên trong tuần.
-vbSaturday - sử dụng thứ Bảy làm ngày đầu tuần.
-vbUseSystemDayOfTheWeek - sử dụng ngày đầu tiên trong tuần do cài đặt hệ thống của bạn chỉ định.
- Firstweekofyear (Không bắt buộc) - Hằng số xác định tuần đầu tiên của năm. Nếu để trống thì tuần 1 tháng 1 được sử dụng làm tuần đầu tiên của năm. Firstweekofyear có thể là một trong các giá trị sau:
-vbFirstJan1 - sử dụng tuần có chứa ngày 1 tháng 1.
-vbFirstFourDays - sử dụng tuần đầu tiên có ít nhất bốn ngày trong năm mới.
-vbFirstFullWeek - sử dụng tuần đầu tiên trong năm.
-vbSystem - sử dụng tuần đầu tiên của năm như được chỉ định bởi cài đặt hệ thống của bạn.
Đoạn mã sau cho bạn biết cách sử dụng Hàm DatePart:
123456789 | Sub usingTheDatePartFunction ()Dim thePartOfTheDate As IntegerthePartOfTheDate = DatePart ("yyyy", "12/12/2009")Debug, in thePartOfTheDateKết thúc Sub |
Kết quả là:
Hàm DateSerial VBA
Hàm DateSerial VBA nhận một năm, tháng và ngày đầu vào và trả về một ngày.
Cú pháp của Hàm DateSerial là:
DateSerial (Năm, Tháng, Ngày) trong đó:
- Năm - Một giá trị số nguyên từ 100 đến 9999 đại diện cho năm.
- Tháng - Một giá trị số nguyên đại diện cho tháng.
- Ngày - Một giá trị số nguyên đại diện cho ngày.
Đoạn mã sau cho bạn biết cách sử dụng Hàm DateSerial:
123456789 | Sub usingTheDateSerialFunction ()Làm mờ ngày như ngàytheDate = DateSerial (2010, 11, 10)Debug, in theDateKết thúc Sub |
Kết quả là:
Hàm DateValue VBA
Hàm DateValue trả về một Ngày khi cho một biểu diễn chuỗi của một ngày.
Cú pháp của Hàm DateValue là:
DateValue (Ngày) trong đó:
- Ngày - Một chuỗi đại diện cho ngày.
Đoạn mã sau cho bạn biết cách sử dụng Hàm DateValue:
123456789 | Sub usingTheDateValueFunction ()Làm mờ ngày như ngàytheDate = DateValue ("Ngày 29 tháng 10 năm 2010")Debug, in theDateKết thúc Sub |
Kết quả là:
Chức năng ngày VBA
Bạn có thể sử dụng Hàm Day để trả về ngày của một ngày nhập.
Cú pháp của Hàm Day là:
Ngày (Date_value) trong đó:
- Date_value - Ngày mà bạn muốn trích xuất ngày.
Đoạn mã sau cho bạn biết cách sử dụng Hàm Day:
123456789 | Sub usingTheDayFunction ()Dim theDay As IntegertheDay = Day ("10/12/2010")Debug. In theDayKết thúc Sub |
Kết quả là:
Chức năng giờ VBA
Bạn có thể sử dụng Chức năng Giờ để trả về giờ của thời gian nhập.
Cú pháp của Hàm Hour là:
Giờ (Giờ) trong đó:
- Thời gian - Thời gian mà bạn muốn trích xuất giờ.
Đoạn mã sau cho bạn biết cách sử dụng Hàm Giờ:
123456789 | Sub usingTheHourFunction ()Dim theHour As IntegertheHour = Giờ ("2:14:17 AM")Debug.Print theHourKết thúc Sub |
Kết quả là:
Chức năng phút VBA
Bạn có thể sử dụng Hàm phút để trả về giá trị phút của thời gian nhập.
Cú pháp của hàm Minute là:
Phút (Thời gian) trong đó:
- Thời gian - Thời gian mà bạn muốn trích xuất giá trị phút.
Đoạn mã sau cho bạn biết cách sử dụng Hàm Minute:
123456789 | Sub usingTheMinuteFunction ()Dim theMinuteValue As IntegertheMinuteValue = Phút ("2:14:17 sáng")Gỡ lỗi. In theMinuteValueKết thúc Sub |
Kết quả là:
Chức năng thứ hai của VBA
Bạn có thể sử dụng Hàm thứ hai để trả về giá trị thứ hai của thời gian nhập.
Cú pháp của Hàm thứ hai là:
Thứ hai (Thời gian) trong đó:
- Thời gian - Thời gian mà bạn muốn trích xuất giá trị thứ hai.
Đoạn mã sau cho bạn biết cách sử dụng Hàm thứ hai:
123456789 | Sub usingTheSecondFunction ()Dim theSecondValue As IntegertheSecondValue = Thứ hai ("2:14:17 SA")Debug. In theSecondValueKết thúc Sub |
Kết quả là:
Hàm tháng VBA
Bạn có thể sử dụng Hàm Tháng để trả về tháng của một ngày nhập.
Cú pháp của Hàm Tháng là:
Tháng (Date_value) trong đó:
- Date_value - Ngày bạn muốn trích xuất tháng.
Đoạn mã sau cho bạn biết cách sử dụng Hàm tháng:
12345678 | Sub usingTheMonthFunction ()Làm mờ tháng dưới dạng số nguyêntheMonth = Tháng ("18/11/2010")Gỡ lỗi. In thángKết thúc Sub |
Kết quả là:
Chức năng tên tháng của VBA
Bạn có thể sử dụng Hàm MonthName để trả về tên của một tháng từ số tháng được cung cấp đầu vào.
Cú pháp của hàm MonthName là:
MonthName (Number_of_month, [Viết tắt]) trong đó:
- Number_of_month - Một giá trị nguyên từ 1 đến 12.
- Viết tắt (Không bắt buộc) - Chỉ định xem có nên viết tắt tên tháng hay không. Nếu để trống, giá trị mặc định của False được sử dụng.
12345678 | Sub usingTheMonthNameFunction ()Dim theMonthName thành chuỗitheMonthName = MonthName (12, Đúng)Debug.Print theMonthNameKết thúc Sub |
Kết quả là:
Chức năng VBA TimeSerial
Hàm TimeSerial lấy một giờ, phút và giây đầu vào và trả về một thời gian.
Cú pháp của Hàm TimeSerial là:
TimeSerial (Giờ, Phút, Giây) trong đó:
- Giờ - Một giá trị nguyên từ 0 đến 23 đại diện cho giá trị giờ.
- Phút - Một giá trị nguyên từ 0 đến 59 đại diện cho giá trị phút.
- Thứ hai - Một giá trị số nguyên từ 0 đến 59 đại diện cho giá trị thứ hai.
Đoạn mã sau chỉ cho bạn cách sử dụng Hàm TimeSerial:
12345678 | Sub usingTheTimeSerialFunction ()Giảm thời gian như ngàytheTime = TimeSerial (1, 10, 15)Debug.Print theTimeKết thúc Sub |
Kết quả là:
Hàm VBA TimeValue
Hàm TimeValue trả về Thời gian từ biểu diễn chuỗi của ngày hoặc giờ.
Cú pháp của Hàm TimeValue là:
TimeValue (Thời gian) trong đó:
- Thời gian - Chuỗi đại diện cho thời gian.
Đoạn mã sau cho bạn biết cách sử dụng Hàm TimeValue:
12345678 | Sub usingTheTimeValueFunction ()Giảm thời gian như ngàytheTime = TimeValue ("22:10:17")Debug.Print theTimeKết thúc Sub |
Kết quả là:
Hàm VBA trong tuần
Bạn có thể sử dụng Hàm Weekday để trả về một số nguyên từ 1 - 7 đại diện cho một ngày trong tuần kể từ ngày nhập.
Cú pháp của Hàm trong tuần là:
Ngày trong tuần (Ngày, [Firstdayofweek]) trong đó:
- Ngày - Ngày mà bạn muốn trích xuất giá trị ngày trong tuần.
- Ngày đầu tuần (Không bắt buộc) - Một hằng số chỉ định ngày trong tuần mà hàm sẽ sử dụng làm ngày đầu tiên trong tuần. Nếu chủ nhật trống được sử dụng làm ngày đầu tiên trong tuần. Firstdayofweek có thể là một trong các giá trị sau:
-vbSunday - sử dụng Chủ nhật là ngày đầu tiên trong tuần.
-vbMonday - sử dụng thứ Hai làm ngày đầu tiên trong tuần.
-vbTuesday - sử dụng thứ Ba làm ngày đầu tiên trong tuần.
-vbWednesday - sử dụng thứ Tư là ngày đầu tiên trong tuần.
-vbThursday - sử dụng thứ Năm làm ngày đầu tiên trong tuần.
-vbFriday - sử dụng thứ Sáu làm ngày đầu tiên trong tuần.
-vbSaturday - sử dụng thứ Bảy làm ngày đầu tuần.
-vbUseSystemDayOfTheWeek - sử dụng ngày đầu tiên trong tuần do cài đặt hệ thống của bạn chỉ định.
Đoạn mã sau cho bạn biết cách sử dụng Hàm ngày trong tuần:
1234567 | Sub usingTheWeekdayFunction ()Dim theWeekDay As IntegertheWeekDay = Ngày trong tuần ("20/11/2019")Gỡ lỗi. In theWeekDayKết thúc Sub |
Kết quả là:
Hàm VBA WeekdayName
Bạn có thể sử dụng Hàm WeekdayName để trả về tên của một ngày trong tuần từ một số ngày trong tuần được cung cấp đầu vào.
Cú pháp của Hàm WeekdayName là:
WeekdayName (Ngày trong tuần, [Viết tắt], [Firstdayoftheweek]) trong đó:
- Ngày trong tuần - Một giá trị số nguyên từ 1 đến 7.
- Viết tắt (Không bắt buộc) -Chỉ định xem có nên viết tắt tên ngày trong tuần hay không. Nếu để trống, giá trị mặc định của False được sử dụng.
- Ngày đầu tuần (Không bắt buộc) - Một hằng số chỉ định ngày trong tuần mà hàm sẽ sử dụng làm ngày đầu tiên trong tuần. Nếu chủ nhật trống được sử dụng làm ngày đầu tiên trong tuần. Firstdayofweek có thể là một trong các giá trị sau:
-vbSunday - sử dụng Chủ nhật là ngày đầu tiên trong tuần.
-vbMonday - sử dụng thứ Hai làm ngày đầu tiên trong tuần.
-vbTuesday - sử dụng thứ Ba làm ngày đầu tiên trong tuần.
-vbWednesday - sử dụng thứ Tư làm ngày đầu tiên trong tuần.
-vbThursday - sử dụng thứ Năm làm ngày đầu tiên trong tuần.
-vbFriday - sử dụng thứ Sáu làm ngày đầu tiên trong tuần.
-vbSaturday - sử dụng thứ Bảy làm ngày đầu tuần.
-vbUseSystemDayOfTheWeek - sử dụng ngày đầu tiên trong tuần do cài đặt hệ thống của bạn chỉ định.
12345678 | Sub usingTheWeekdayNameFunction ()Dim theWeekdayName thành chuỗitheWeekdayName = WeekdayName (4)Gỡ lỗi. In theWeekdayNameKết thúc Sub |
Kết quả là:
Chức năng năm của VBA
Bạn có thể sử dụng Hàm Year để trả về năm của một ngày nhập.
Cú pháp của Hàm Year là:
Năm (Date_value) trong đó:
- Date_value - Ngày mà bạn muốn trích xuất năm.
Đoạn mã sau cho bạn biết cách sử dụng Hàm năm:
12345678 | Sub usingTheYearFunction ()Dim theYear As IntegertheYear = Năm ("11/12/2010")Debug.Print theYearKết thúc Sub |
Kết quả là:
So sánh ngày trong VBA
Bạn có thể so sánh ngày tháng bằng các toán tử>, <, và = trong VBA. Đoạn mã sau chỉ cho bạn cách so sánh hai ngày trong VBA.
12345678910111213141516171819 | Ngày so sánh phụ ()Làm mờ ngàyLàm mờ ngày tháng Hai như ngày thángdateOne = "10/10/2010"dateTwo = "11/11/2010"Nếu dateOne> dateTwo ThenDebug.Print "dateOne là ngày sau"ElseIf dateOne = dateTwo ThenDebug.Print "Hai ngày bằng nhau"KhácDebug.Print "dateThai là ngày sau"Kết thúc nếuKết thúc Sub |
Tìm hiểu thêm về cách Định dạng ngày tháng dưới dạng chuỗi bằng cách xem hướng dẫn này.