VBA DateDiff | Ví dụ từng bước để sử dụng Hàm DateDiff VBA Excel
Hàm DATEDIFF trong VBA là một hàm có sẵn trong VBA cũng được phân loại theo hàm ngày và giờ trong VBA, hàm này được sử dụng để lấy chênh lệch giữa hai ngày, hàm này nhận ba đối số, đối số đầu tiên là phần của sự khác biệt mà chúng ta muốn có thể là năm ngày hoặc tháng hoặc giây và hai ngày và kết quả là một số nguyên.
Hàm DATEDIFF trong VBA
Hàm DATEDIFF trong VBA tính toán sự khác biệt giữa hai ngày trong ngày, tháng, quý và năm.
Trong excel tìm sự khác biệt giữa hai ngày có nhiều cách. Bạn không cần một công thức đặc biệt để tính toán sự khác biệt giữa hai ngày.
Để có một ví dụ, hãy nhìn vào hình ảnh bên dưới.
Nếu chúng ta muốn tính toán sự khác biệt giữa hai ngày này, chúng ta có thể chỉ cần trừ ngày 1 cho ngày 2.
Nó đã cho chúng ta sự khác biệt giữa hai ngày trong một số ngày. Đây là vấn đề với công thức chung này. Nếu chúng ta cần sự khác biệt về tháng, năm, quý, v.v ... thì nó không thể đưa ra.
Trong bài viết này, chúng tôi sẽ hướng dẫn bạn cách sử dụng hàm DateDiff này trong VBA.
Hàm DATEDIFF trong Excel VBA là gì?
DATEDIFF trong VBA là viết tắt của “Ngày khác biệt giữa hai ngày”.
Hàm này có thể cung cấp cho chúng ta số khoảng thời gian giữa hai ngày. Khi chúng ta muốn tìm sự khác biệt giữa hai ngày, chúng ta có thể tìm nó theo ngày, tuần, tháng, quý, v.v.
Để hiểu hàm, hãy xem cú pháp bên dưới của hàm.
Khoảng thời gian: Điều này không có gì khác ngoài việc bạn muốn tính chênh lệch ngày theo cách nào. Cho dù đó là ngày, tháng, tuần, quý, vv… Dưới đây là danh sách giống nhau.
Ngày 1: Ngày đầu tiên bạn muốn tìm sự khác biệt là gì.
Ngày 2: Ngày thứ hai bạn muốn tìm sự khác biệt so với Ngày 1. Ngày 1: Ngày đầu tiên bạn muốn tìm sự khác biệt là gì.
Ở đây công thức là Ngày 2 - Ngày 1.
[Ngày đầu tiên trong tuần]: Ngày đầu tiên trong tuần là ngày nào? Chúng ta có thể lập luận sau đây.
[Tuần đầu tiên của năm]: Tuần đầu tiên của năm là gì. Chúng ta có thể nhập các đối số sau đây.
Ví dụ về hàm DATEDIFF trong Excel VBA
Sau đây là các ví dụ về excel VBA DateDiff.
Bạn có thể tải xuống Mẫu hàm VBA DateDiff này tại đây - Mẫu hàm VBA DateDiffVí dụ số 1 - Để tìm sự khác biệt trong số ngày
Giả sử bạn có hai ngày “15-01-2018” và “15-01-2019”. Chúng ta hãy tìm tất cả các loại khác biệt cho hai ngày này.
Bước 1: Tạo tên macro trước.
Mã:
Sub DateDiff_Example1 () End Sub
Bước 2: Xác định Hai biến là Ngày.
Mã:
Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date End Sub
Bước 3: Bây giờ cho biến Date1 gán “15-01-2018” và cho biến Date2 gán “15-01-2019”.
Mã:
Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Date1 = "15-01-2018" Date2 = "15-01-2019" End Sub
Bước 4: Bây giờ để lưu trữ kết quả, hãy xác định thêm một biến nữa là Long.
Mã:
Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Dim Kết quả As Long Date1 = "15-01-2018" Date2 = "15-01-2019" End Sub
Bước 5: Bây giờ gán giá trị cho biến này thông qua hàm DATEDIFF trong VBA
Mã:
Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Dim Kết quả As Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff (End Sub
Bước 6: Đối số đầu tiên là chúng ta cần sự khác biệt nào giữa hai ngày này. Giả sử chúng ta cần tìm số ngày, vì vậy hãy cung cấp đối số là “D”.
Mã:
Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Dim Result As Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff ("D", End Sub
Bước 7: Ngày đầu tiên để tìm ra sự khác biệt là gì. Ngày đầu tiên của chúng tôi là “15-01-2018” mà chúng tôi đã gán cho biến “Date1”. Vì vậy, hãy cung cấp tên biến ở đây.
Mã:
Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Dim Kết quả As Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff ("D", Date1, End Sub
Bước 8: Ngày thứ hai là gì để tìm ra sự khác biệt. Ngày thứ hai là “15-01-2019” giữ giá trị thông qua biến “Date2”.
Mã:
Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Dim Kết quả As Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff ("D", Date1, Date2) End Sub
Bước 9: Bỏ qua hai thông số cuối cùng. Bây giờ chỉ định giá trị của biến “Kết quả” thông qua hộp thông báo VBA.
Mã:
Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Dim Kết quả As Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff ("D", Date1, Date2) MsgBox Kết quả Kết thúc Sub
Bây giờ chạy mã bằng phím F5 hoặc theo cách thủ công, chúng ta sẽ nhận được sự khác biệt giữa hai ngày này trong một số ngày.
Vì vậy, từ “15-01-2018” đến 15-01-2019 ”, sự khác biệt chính xác là 1 năm, vì vậy chúng tôi có kết quả là 365 ngày.
Như vậy, chúng ta có thể tìm thấy sự khác biệt giữa hai ngày trong các khoảng thời gian.
Ví dụ # 2 - Để Tìm Sự khác biệt trong Tháng
Mã:
Sub DateDiff_Example2 () Dim Date1 As Date Dim Date2 As Date Dim Result As Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff ("M", Date1, Date2) MsgBox Kết quả Kết thúc Sub
Chạy mã này Sử dụng phím F5 hoặc bạn có thể chạy thủ công để hiển thị kết quả như bên dưới.
Ví dụ # 3 - Để Tìm Sự khác biệt theo Năm
Mã:
Sub DateDiff_Example3 () Dim Date1 As Date Dim Date2 As Date Dim Kết quả As Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff ("YYYY", Date1, Date2) MsgBox Kết quả Kết thúc Sub
Chạy mã này bằng phím F5 hoặc theo cách thủ công để xem kết quả.
Bài tập như một thực hành
Tôi hy vọng bạn đã hiểu chức năng của VBA DATEDIFF. Hãy xem các bài tập dưới đây cho bạn. Tìm sự khác biệt giữa các ngày dưới đây trong "Tháng".
Nếu bạn chưa tìm ra cách dưới đây là mã làm sẵn dành cho bạn.
Mã:
Gán con () Dim k As Long For k = 2 to 8 Cell (k, 3) .Value = DateDiff ("M", Cells (k, 1), Cells (k, 2)) Next k End Sub
Bạn có thể chạy mã này theo cách thủ công hoặc nhấn phím F5 để xem kết quả.