Trả về kết quả ngày tháng khác nhau trong hàm Date

Blue Softs epl Liên hệ QC

khonggianviet

Thành viên mới
Tham gia
30/11/10
Bài viết
29
Được thích
6
Chào các anh chị và các bạn trên diễn đàn. Tôi có vấn đề như thế này mà chưa biết giải quyết như thế nào. Nhờ ace trên diễn đàn tư vấn giải đáp thắc mắc!
Tôi sử dụng hàm date để tính ngày đến hạn
Ví dụ:
- Ngày 30/12/2019 bắt đầu có hiệu lực, thời gian hiệu lực là 16 tháng (sau đó được giảm 02 tháng còn lại 14 tháng). Tôi dùng hàm =DATE(YEAR(C4);MONTH(C4)+E4-F4;DAY(C4)). Bình thường trả về kết quả là ngày 02/03/2021.
- Tuy nhiên, trong thực tiễn phát sinh trường hợp thời gian giảm lại là 1 tháng 29 ngày (01 tháng quy ước là 30 ngày).
+ Nếu tôi quy đổi 01 tháng 29 ngày thành 59 rồi dùng hàm =DATE(YEAR(C3);MONTH(C3)+E3;DAY(C3)-G3) để trừ thẳng vào ngày, thì cũng trả về kết quả giống như trên là ngày 02/03/2021.
+ Nếu vẫn dữ nguyên 01 tháng 29 ngày và dùng hàm =DATE(YEAR(C2);MONTH(C2)+E2-F2;DAY(C2)-G2) để tháng trừ tháng và ngày trừ vào ngày thì kết quả trả về lại là ngày 01/03/2021.
Tôi chưa tìm được nguyên nhân và lý do lại cho kết quả khác nhau như vậy, mong được giải đáp vướng mắc. Thanks all
(Gửi ace file đính kèm và nhờ sửa lại cho đúng)
 

File đính kèm

  • Book1.xlsx
    10.4 KB · Đọc: 3
Lần chỉnh sửa cuối:

Phuocam

Thành viên mới
Tham gia
16/5/13
Bài viết
3,589
Được thích
5,173
Chào các anh chị và các bạn trên diễn đàn. Tôi có vấn đề như thế này mà chưa biết giải quyết như thế nào. Nhờ ace trên diễn đàn tư vấn giải đáp thắc mắc!
Tôi sử dụng hàm date để tính ngày đến hạn
Ví dụ:
- Ngày 30/12/2019 bắt đầu có hiệu lực, thời gian hiệu lực là 16 tháng (sau đó được giảm 02 tháng còn lại 14 tháng). Tôi dùng hàm =DATE(YEAR(G4);MONTH(G4)+I4-J4;DAY(G4)). Bình thường trả về kết quả là ngày 02/03/2021.
- Tuy nhiên, trong thực tiễn phát sinh trường hợp thời gian giảm lại là 1 tháng 29 ngày (01 tháng quy ước là 30 ngày).
+ Nếu tôi quy đổi 01 tháng 29 ngày thành 59 rồi dùng hàm =DATE(YEAR(C3);MONTH(C3)+E3;DAY(C3)-G3) để trừ thẳng vào ngày, thì cũng trả về kết quả giống như trên là ngày 02/03/2021.
+ Nếu vẫn dữ nguyên 01 tháng 29 ngày và dùng hàm =DATE(YEAR(C2);MONTH(C2)+E2-F2;DAY(C2)-G2) để tháng trừ tháng và ngày trừ vào ngày thì kết quả trả về lại là ngày 01/03/2021.
Tôi chưa tìm được nguyên nhân và lý do lại cho kết quả khác nhau như vậy, mong được giải đáp vướng mắc. Thanks all
(Gửi ace file đính kèm và nhờ sửa lại cho đúng)
Trong G4 là 31/1/2021 và trong I4 là 1

Nếu dùng =DATE(YEAR(G4);MONTH(G4)+I4;DAY(G4)) , T => Kết quả sẽ là 3/3/2021

Nếu dùng =EDATE(G4,I4) => Kết quả sẽ là 28/2/2021

.
 

khonggianviet

Thành viên mới
Tham gia
30/11/10
Bài viết
29
Được thích
6
Trong G4 là 31/1/2021 và trong I4 là 1

Nếu dùng =DATE(YEAR(G4);MONTH(G4)+I4;DAY(G4)) , T => Kết quả sẽ là 3/3/2021

Nếu dùng =EDATE(G4,I4) => Kết quả sẽ là 28/2/2021

.
Có nhầm lẫn một chút trong trích dẫn bác. Đúng phải là =DATE(YEAR(C4);MONTH(C4)+E4-F4;DAY(C4))
Em có gửi fie đính kèm bác xem giúp
 

Phuocam

Thành viên mới
Tham gia
16/5/13
Bài viết
3,589
Được thích
5,173
Có nhầm lẫn một chút trong trích dẫn bác. Đúng phải là =DATE(YEAR(C4);MONTH(C4)+E4-F4;DAY(C4))
Em có gửi fie đính kèm bác xem giúp
Chẳng có gì là nhầm lẫn. Đó là ví dụ về kết quả khác nhau giữa 2 cách tính.

Chọn cách tính nào là quyền của bạn.

.
 

khonggianviet

Thành viên mới
Tham gia
30/11/10
Bài viết
29
Được thích
6
Chào cả nhà
Mình có file có các cột C Ngày chấp hành xong; cột D phạm tội mới, cột E vi phạm nghĩa vụ, cột F trạng thái, cột H quyết định chấp hành xong và cột K kết quả trả về.
Mình dùng hàm =IF(D3<>"";$K$3;IF(E3<>"";$K$5;IF(TODAY()>C3;$K$2;$K$3))) để trả về kết quả ở cột F cột trạng thái (trong công thức này là ô F3 - Vi phạm nghĩa vụ). Đối với trường hợp này kết quả như vậy đáp ứng được yêu cầu.
Tại ô F6 cũng áp dụng công thức tương tự =IF(D6<>"";$K$3;IF(E6<>"";$K$5;IF(TODAY()>C6;$K$2;$K$3))) trả về kết quả là Chấp hành xong. Tuy nhiên mình muốn nếu ô H6 mà rỗng thì phải báo là Chưa ra quyết định chấp hành xong (trả về kết quả như vậy để mình kịp thời có ý kiến nhắc nhở đối với Cơ quan phải ra quyết định) và mình đã thử dùng hàm if and lồng nhau =IF(D9<>"";$K$3;IF(E9<>"";$K$5;IF(TODAY()>C9;AND(H9<>"";$K$6;;$K$2;$K$3)))) nhưng kết quả không đúng như mong muốn.
Rất mong các ace trong diễn đàn hướng dẫn giải đáp giúp. Cảm ơn ace trong diễn đàn rất nhiều.
Mình có gửi file đính kèm
 

File đính kèm

  • Book1.xlsx
    55.6 KB · Đọc: 1
Web KT
Top Bottom