Khi bạn đang lập trình macro Excel, bạn nên biết rằng ngày tháng được lưu trữ bên trong, trong các biến, dưới dạng số sê-ri. Số sê-ri đại diện cho số ngày đã trôi qua kể từ “ngày gốc” bắt đầu, cụ thể là kể từ ngày 1 tháng 1 năm 100. Điều này có nghĩa là bạn có thể thực hiện phép toán với các số sê-ri, nếu muốn. Ví dụ, bạn có thể tìm số ngày giữa hai ngày bằng cách trừ các ngày cho nhau.

Nếu bạn muốn tính toán ngày tháng đẹp hơn, bạn có thể sử dụng hàm DateDiff. Ví dụ, chức năng này cho phép bạn xác định số tuần hoặc số tháng giữa hai ngày. Để sử dụng chức năng tìm loại thông tin này, bạn thực hiện như sau:

iNumWeeks = DateDiff("ww", dFirstDate, dSecondDate)

iNumMonths = DateDiff("m", dFirstDate, dSecondDate)

Dòng đầu tiên xác định số tuần giữa hai ngày và dòng thứ hai xác định số tháng giữa chúng.

Hãy nhớ rằng hàm DateDiff là một hàm macro (VBA), không phải là một hàm trang tính. Excel xử lý phạm vi ngày trong trang tính bắt đầu bằng ngày 1 tháng 1 năm 1900. Tuy nhiên, trong VBA, ngày có thể bắt đầu (như đã được lưu ý) vào năm 100. Điều đó có nghĩa là macro có thể xử lý phạm vi ngày lớn hơn nhiều, bao gồm cả các ngày trước đó cho những người được xử lý nguyên bản bởi Excel.

_Lưu ý: _

Nếu bạn muốn biết cách sử dụng các macro được mô tả trên trang này (hoặc trên bất kỳ trang nào khác trên trang ExcelTips), tôi đã chuẩn bị một trang đặc biệt bao gồm thông tin hữu ích.

ExcelTips là nguồn của bạn để đào tạo Microsoft Excel hiệu quả về chi phí.

Mẹo này (9046) áp dụng cho Microsoft Excel 2007, 2010, 2013, 2016, 2019 và Excel trong Office 365. Bạn có thể tìm thấy phiên bản của mẹo này cho giao diện menu cũ hơn của Excel tại đây: