Hỏi về vấn đề làm tròn số

Liên hệ QC
B1=IF(--MID(A1;FIND(",";A1)+1;2)<25;--LEFT(A1;FIND(",";A1)-1);IF(--MID(A1;FIND(",";A1)+1;2)<75;--LEFT(A1;FIND(",";A1)-1)+0,5;--LEFT(A1;FIND(",";A1)-1)+1))

1. Nếu máy tính dùng dấu chấm thập phân, lỗi (vì tìm dấu "," không có)
2. Nếu số nguyên, lỗi (vì tìm dấu "," không có)
3. Nếu số chỉ có 1 số thập phân, kết quả sai (vì mid lấy 2 chỉ được 1, từ 1 đến 9, lúc nào cũng nhỏ hơn 25)
4. Dùng hàm Text sửa mấy lỗi trên vẫn được, nhưng Công thức vốn đã dài, sửa mấy lỗi trên xong, sẽ dài hơn nữa, không gõ sai mới là chuyện lạ. Mà nhỡ thầy cô không cho dùng Left, Mid với Text với Find thì sao? Cả cái dấu -- nữa chứ!
 
Nếu chưa sửa lỗi thì công thức trên có thể rút gọn như sau:

= LEFT(A1;FIND(",";A1)-1)+IF(--MID(A1;FIND(",";A1)+1;2)<25;0;IF(--MID(A1;FIND(",";A1)+1;2)<75;0,5;1))

1. Nếu sửa lỗi 2 và 3 như lão chết tiệt nêu, thì thay A1 trong công thức bằng TEXT(A1;"#.###,#0) như sau:

= LEFT(TEXT(A1;"#.###,#0");FIND(",";TEXT(A1;"#.###,#0"))-1)+IF(--MID(TEXT(A1;"#.###,#0");FIND(",";TEXT(A1;"#.###,#0"))+1;2)<25;0;IF(--MID(TEXT(A1;"#.###,#0");FIND(",";TEXT(A1;"#.###,#0"))+1;2)<75;0,5;1))

2. Nếu sửa lỗi 1, thì thay dấu "," trong công thức Find bằng dấu "."

3. Sửa lỗi 4: Bó tay: Int và Mod chưa học thì chưa chắc Find và Text đã học.

4. Sửa lỗi dấu -- không cho xài: cái này chắc chắn chưa học và chả chắc sẽ được học trong trường. Có thể thay bằng hàm Value, thì đẻ ra chuyện: Hàm Value học chưa? Cũng bó tay.
 
Lần chỉnh sửa cuối:
thanks mọi người nhiều em dùng cái hàm kia cũng đc ko cần dùng hàm if đâu.Lèo nhèo thế này nhìn hoa mắt rùi. chứ chưa nói là hiểu
 
Bạn nhỏ xem file nha, sao lại không giống chứ.
 

File đính kèm

Web KT

Bài viết mới nhất

Back
Top Bottom