Hàm Text tách ngày tháng chưa đúng!

Liên hệ QC

phuyen89

Thành viên tích cực
Tham gia
20/11/08
Bài viết
870
Được thích
334
Nghề nghiệp
Student
Chào mọi người, em dùng hàm Text tách ngày tháng ra, nhưng không hiểu vì sao, không giống như mục đích của em.
Ví dụ ngày : 03/02/2015
Em muốn tách thành 0302.
Em dùng hàm như sau: text(day(03/02/2015),"dd")&text(month(03/02/2015),"mm").
Nhưng kết quả ra là: 0301, em dùng F9 nhấn đoạn text(month(03/02/2015),"mm"). thì mới biết là kết quả trả về là 01 chứ không phải la 02.
Mong mọi người giúp đỡ tìm kiếm nguyên nhân.
Xin cảm ơn!
 
Bạn muốn tách hẳn thành 0302, hay chỉ đơn giản nhìn là 0302.
Nếu chỉ cần nhìn là 0302 thì vào Format Cell\Custom viết là ddmm
 
Chào mọi người, em dùng hàm Text tách ngày tháng ra, nhưng không hiểu vì sao, không giống như mục đích của em.
Ví dụ ngày : 03/02/2015
Em muốn tách thành 0302.
Em dùng hàm như sau: text(day(03/02/2015),"dd")&text(month(03/02/2015),"mm").
Nhưng kết quả ra là: 0301, em dùng F9 nhấn đoạn text(month(03/02/2015),"mm"). thì mới biết là kết quả trả về là 01 chứ không phải la 02.
Mong mọi người giúp đỡ tìm kiếm nguyên nhân.
Xin cảm ơn!
Trước hết phân tích cho bạn lý do tại sao lại là 01 chứ không phải la 02 đã: Nếu bạn nhập trực tiếp 03/02/2015 vào trong hàm DAY hoặc hàm MONTH thì nó sẽ được tính toán trước (bằng "3 chia cho 2 rồi chia cho 2015", được con số thế này: 0.000744416873449132), và kết quả phép chia này không phải là "ngày 3 tháng 2 năm 2015" nữa, dẫn đến kết quả sai. Ngược lại, nếu bạn nhập 03/02/2015 vào ô A1 rôi sử dụng công thức =TEXT(DAY(A1),"dd")&TEXT(MONTH(A1),"mm") thì cái chỗ MONTH(A1) sẽ trả về giá trị =2, số này tương ứng với ngày 02/01/1900, như vậy thì rõ ràng là TEXT(MONTH(A1),"mm") trả về giá trị bằng 1 là hợp lý.

Để khắc phục thì bạn có thể bỏ 2 hàm DAY và MONTH trong công thức của bạn đi, và nên nhập ngày vào 1 ô thay vì nhập nó trực tiếp vào công thức. Công thức lúc này sẽ có dạng =TEXT(A1,"dd")&TEXT(A1,"mm"), hoặc gọn gàng hơn là =TEXT(A1,"ddmm").
 
Trước hết phân tích cho bạn lý do tại sao lại là 01 chứ không phải la 02 đã: Nếu bạn nhập trực tiếp 03/02/2015 vào trong hàm DAY hoặc hàm MONTH thì nó sẽ được tính toán trước (bằng "3 chia cho 2 rồi chia cho 2015", được con số thế này: 0.000744416873449132), và kết quả phép chia này không phải là "ngày 3 tháng 2 năm 2015" nữa, dẫn đến kết quả sai. Ngược lại, nếu bạn nhập 03/02/2015 vào ô A1 rôi sử dụng công thức =TEXT(DAY(A1),"dd")&TEXT(MONTH(A1),"mm") thì cái chỗ MONTH(A1) sẽ trả về giá trị =2, số này tương ứng với ngày 02/01/1900, như vậy thì rõ ràng là TEXT(MONTH(A1),"mm") trả về giá trị bằng 1 là hợp lý.

Để khắc phục thì bạn có thể bỏ 2 hàm DAY và MONTH trong công thức của bạn đi, và nên nhập ngày vào 1 ô thay vì nhập nó trực tiếp vào công thức. Công thức lúc này sẽ có dạng =TEXT(A1,"dd")&TEXT(A1,"mm"), hoặc gọn gàng hơn là =TEXT(A1,"ddmm").

Chào mọi người!
Làm như thế nào để em có thể thấy Excel làm theo từng bước như thế. Khi bị lỗi như trên, em đã vào Evaluate Formulas để phân tích xem nó hoạt động như thế nào? Nhưng vẫn không rõ được như Anh đã phân tích như trên.
Xin cảm ơn!
 
Chào mọi người!
Làm như thế nào để em có thể thấy Excel làm theo từng bước như thế. Khi bị lỗi như trên, em đã vào Evaluate Formulas để phân tích xem nó hoạt động như thế nào? Nhưng vẫn không rõ được như Anh đã phân tích như trên.
Xin cảm ơn!
Cái chỗ làm như thế nào thì bạn đã làm rồi đấy thôi, bôi chọn đoạn công thức rồi nhấn F9, thấy nghi vấn chỗ nào thì chọn chỗ đó rồi nhấn F9 thôi.
 
Web KT
Back
Top Bottom