Buộc ngày chuyển tiếp (Microsoft Excel)
Roger đang theo dõi invoices trong một trang tính Excel. Tất cả các hóa đơn cần phải được gửi với ngày đến hạn là ngày 28 của tháng và Roger tự hỏi liệu có cách nào để buộc một ngày luôn luôn “chuyển sang ngày 28 tiếp theo” hay không.
Cách rõ ràng nhất để buộc chuyển ngày là tạo một công thức sẽ kiểm tra một ngày trong một ô và sau đó buộc ngày đó vào ngày mong muốn tiếp theo, chẳng hạn như ngày 28. Công thức sau là một công thức tốt để bắt đầu với:
=IF(DAY(A1)>28,DATE(YEAR(A1),MONTH(A1)+1,28),DATE(YEAR(A1),MONTH(A1),28))
Công thức này kiểm tra ngày trong ô A1. Nếu giá trị DAY của ngày lớn hơn 28, thì công thức sẽ xây dựng và trả về một ngày bằng ngày 28 của tháng tiếp theo. Nếu nó nhỏ hơn hoặc bằng 28, thì ngày 28 của tháng hiện tại được trả về.
Tuy nhiên, có một cách thậm chí còn ngắn hơn để hiển thị một công thức có thể chấp nhận — một cách hoàn toàn loại bỏ hàm IF:
=DATE(YEAR(A1),MONTH(A1)+(DAY(A1)>28),28)
Điều này sử dụng năm hiện tại làm năm và ngày luôn là 28. Tháng sử dụng phép tính Boolean. Nếu ngày lớn hơn 28 thì (Ngày (A1)> 28) sẽ là TRUE và sẽ được tính là 1, do đó cộng 1 vào tháng hiện tại. Nếu nó nhỏ hơn hoặc bằng 28 nó sẽ là FALSE và được tính là 0, chỉ cần tính tháng hiện tại.
Nếu bạn không muốn “nghiêm khắc” chỉ cho một số người một ngày (27/4/2012 sẽ đưa ra ngày đến hạn là 28/4/2012), bạn có thể lên kế hoạch cho họ ít nhất một tuần với công thức:
=DATE(YEAR(A1),MONTH(A1)+(DAY(A1)>21),28)
Điều này sẽ cho ngày 28 của tháng hiện tại cho ngày 1 đến ngày 21, nhưng đối với những ngày sau đó, nó sẽ chuyển sang ngày 28 của tháng tiếp theo.
ExcelTips là nguồn của bạn để đào tạo Microsoft Excel hiệu quả về chi phí.
Mẹo này (2410) áp dụng cho Microsoft Excel 97, 2000, 2002 và 2003. Bạn có thể tìm thấy phiên bản của mẹo này cho giao diện ribbon của Excel (Excel 2007 trở lên) tại đây: