VBA DateValue | Làm thế nào để sử dụng hàm DateValue trong Excel VBA?

Hàm DateValue VBA là gì?

Hàm DateValue là một hàm tích hợp sẵn trong Excel VBA thuộc thể loại của hàm Ngày / giờ. Nó hoạt động như cả hàm VBA và hàm trang tính trong vba. Hàm này trả về số sê-ri hoặc giá trị của Ngày được cung cấp ở định dạng biểu diễn chuỗi bỏ qua thông tin về thời gian được cung cấp bởi chuỗi Ngày. Nó được sử dụng theo hai cách khác nhau trong Excel. Hàm này được sử dụng như một công thức trang tính nhập vào một ô trang tính. Nó được sử dụng làm mã macro trong ứng dụng VBA nhập nó thông qua Visual Basic Editor được liên kết với Microsoft Excel.

Trong bài viết này, chúng ta sẽ tìm hiểu các ví dụ về VBA DATEVALUE và cách sử dụng nó với giải thích rõ ràng.

Giải thích về Hàm Datevalue VBA

Trong VBA, DATEVALUE sử dụng cú pháp sau.

Hàm này chỉ sử dụng một Đối số hoặc Tham số duy nhất

  • Ngày : Là ngày được biểu thị ở định dạng chuỗi
  • Trả về: Hàm này trả về giá trị của ngày khi nó được sử dụng như một hàm VBA. Nó trả về giá trị ngày tháng khi nó được sử dụng như một hàm trang tính

Hàm VBA DateValue có thể giải thích dữ liệu được biểu thị ở định dạng văn bản được đề cập ở định dạng Excel hợp lệ. Nó không thể trả về giá trị ngày nếu chuỗi bao gồm đại diện văn bản của ngày trong tuần.

Các lợi ích của hàm VBA DateValue là trích xuất giá trị ngày từ chuỗi và chuyển đổi ngày theo thời gian thành ngày duy nhất. Chúng ta có thể đơn giản rằng khi một ngày được đưa ra cùng với thời gian, hàm này chỉ giá trị ngày tránh giá trị thời gian.

Làm thế nào để sử dụng Excel VBA DATEVALUE?

Để sử dụng hàm DateValue trong Excel, trước tiên cần mở trình soạn thảo VBA.

Nút lệnh cần được đặt trong trang tính Excel để thêm các dòng của chương trình VBA vào đó. Để thực hiện các dòng của chương trình, người dùng yêu cầu bấm vào nút lệnh trong trang tính excel. Để có đầu ra hợp lệ từ chương trình, đầu vào hợp lệ được đưa ra thông qua đối số. Ví dụ, đoạn mã sau đây giúp tạo macro để chạy hàm DateValue để trích xuất giá trị ngày tháng từ văn bản trong VBA.

Chương trình VBA: 

 Sub Datebutton () Dim myDate As Date myDate = DateValue (“15/8/1991”) MsgBox Date (myDate) End Sub 

Mã này dẫn đến ngày là 15 từ đầu vào đã cho.

Ví dụ về Excel VBA DATEVALUE

Dưới đây là các ví dụ về DateValue trong Excel VBA.

Bạn có thể tải xuống Mẫu VBA DateValue Excel này tại đây - Mẫu VBA DateValue Excel

Ví dụ # 1 - Lấy Ngày, Tháng và Năm từ một Ngày

Sau vài bước để tạo và thực thi chương trình trong VBA. Chúng bao gồm

Bước 1: Vào Tab nhà phát triển, đặt con trỏ vào một ô trong trang tính Excel và nhấp vào tùy chọn 'Chèn' và chọn 'Nút lệnh' trong Điều khiển ActiveX như trong hình.

Kéo Nút vào nơi bạn muốn và đặt chú thích là Nút ngày từ cửa sổ thuộc tính.

Bước 2: Nhấp đúp vào nút nó sẽ chuyển hướng đến dự án VBA và viết mã giữa nút lệnh Private Sub và end sub.

Mã sẽ được phát triển như dưới đây để lấy ngày, tháng và năm.

Mã:

 Ngày phụ cá nhân 

Trong đoạn mã này, Datebutton1_Click () là tên và exampledate là biến với kiểu dữ liệu Ngày và Msgbox để hiển thị đầu ra.

Bước 3: Trong khi phát triển mã, lỗi không khớp kiểu vba sẽ xảy ra và cần phải xử lý chúng.

Bước 4: Trong bước này, chạy chương trình nhấp vào tùy chọn chạy.

Hoặc chúng ta có thể kiểm tra hoặc gỡ lỗi chương trình từng bước chọn tùy chọn Step Into dưới menu Debug. Nếu mã của chúng tôi không có bất kỳ lỗi nào, nó sẽ hiển thị đầu ra.

Bước 5 : Khi chương trình được thực thi, đầu tiên nó sẽ hiển thị hộp thông báo với ngày tháng được đưa ra trong phần nhập văn bản. Tiếp theo, bạn bấm vào OK để xem giá trị năm một lần nữa bấm OK trên hộp thông báo để xem giá trị tháng.

Lưu ý: Các bước này phải được thực hiện rõ ràng để có kết quả chính xác.

Ví dụ # 2 - Sử dụng DatePart để lấy các phần khác nhau của ngày

Bước 1: Đi tới Tab Nhà phát triển Excel, đặt con trỏ vào một ô trong trang tính Excel và nhấp vào tùy chọn 'Chèn' và chọn 'Nút lệnh' trong Điều khiển ActiveX như trong hình.

Bước 2: Kéo nút và đặt chú thích là DatePart dưới thuộc tính.

Nhấp đúp vào nút này, nó chuyển hướng đến trang tính của Visual Basic Editor và hiển thị như sau.

Bước 3: Phát triển mã bằng DatePart với DateValue như trong hình.

Mã:

 Private Sub Datepart1_Click () Dim partdate As Variant partdate = DateValue ("8/15/1991") MsgBox partdate MsgBox Datepart ("yyyy", partdate) MsgBox Datepart ("dd", partdate) MsgBox Datepart ("mm", partdate) MsgBox Datepart ("q", partdate) End Sub 

Trong chương trình này, DatePart1 là tên macro và partDate là tên đối số với kiểu dữ liệu 'biến thể'. Để hiển thị năm, ngày, tháng và quý, định dạng được áp dụng là “yyyy”, “d”, “m” và “q”. Nếu chúng tôi thực hiện bất kỳ lỗi nào trong định dạng, nó sẽ hiển thị lỗi sau.

Bước 4: Sau khi gỡ lỗi chương trình thành công, hãy chạy chương trình bằng cách nhấp vào nút run sử dụng phím tắt F5 của excel.

Đầu tiên, mã hiển thị ngày đầy đủ, sau đó sau khi nhấp vào mỗi OK từ hộp thư, nó sẽ hiển thị giá trị năm sau giá trị Ngày, Giá trị Tháng, Giá trị Quater tương ứng.

Những điều cần nhớ về VBA DATEVALUE

Những điều sau đây phải được ghi nhớ khi sử dụng hàm DateValue trong Excel VBA

  • Lỗi thời gian chạy 13 với thông báo Loại Không khớp được hiển thị khi ngày được cung cấp cho hàm DateValue không thể chuyển đổi thành ngày hợp lệ. Chúng tôi cần ngày là định dạng văn bản thích hợp
  • Khi chúng tôi cố gắng lấy ngày duy nhất từ ​​đối số chuỗi có mã 'msgbox date (tên đối số)', nó sẽ hiển thị lỗi kiểu không khớp.
  • Chúng ta có thể thấy đầu ra của hàm DateValue mà không cần mở trình soạn thảo VBA. Nó được thực hiện bằng cách nhấp vào nút lệnh và chọn macro được tạo cho chương trình tương ứng
  • Khi DatePart được sử dụng để lấy các giá trị, định dạng thích hợp phải được tuân theo. Nếu không, nó dẫn đến 'lỗi thời gian chạy 5' với thông báo lệnh gọi hoặc đối số thủ tục không hợp lệ.

$config[zx-auto] not found$config[zx-overlay] not found