Nhờ giúp công thức làm tròn số

Liên hệ QC

a.nguoidensau

Thành viên hoạt động
Tham gia
12/4/12
Bài viết
138
Được thích
28
Xin chào mọi người, tôi có 1 dãy số cần làm tròn như trong File, nhưng tôi lại chưa biết cách, ai biết xin chỉ giúp tôi.
Xin chân thành cảm ơn.
 

File đính kèm

Lần chỉnh sửa cuối:
Xin chào mọi người, tôi có 1 dãy số cần làm tròn như trong File, nhưng tôi lại chưa biết cách, ai biết xin chỉ giúp tôi.
Xin chân thành cảm ơn.
Ai đặt ra cái quy tắc làm tròn ngộ vậy trời? Cùng là số 1.5 mà ở hàng 2 thì làm tròn thành 1, xuống hàng 10 thì làm tròn thành 2. Vậy thì biết đường nào mà xử?
Nếu số 1.5 ở hàng 2 được làm tròn thành 2 thì tôi dự đoán ra quy tắc thế này: Nếu phần nguyên là số lẻ thì làm tròn lên, ngược lại thì làm tròn xuống (đến đơn vị). Với quy tắc này thì công thức sẽ là:
Mã:
=IF(ISODD(A2),ROUNDUP(A2,0),ROUNDDOWN(A2,0))
Hoặc:
Mã:
=ROUNDUP(A2,0)-ISEVEN(A2)
 
Ai đặt ra cái quy tắc làm tròn ngộ vậy trời? Cùng là số 1.5 mà ở hàng 2 thì làm tròn thành 1, xuống hàng 10 thì làm tròn thành 2. Vậy thì biết đường nào mà xử?
Nếu số 1.5 ở hàng 2 được làm tròn thành 2 thì tôi dự đoán ra quy tắc thế này: Nếu phần nguyên là số lẻ thì làm tròn lên, ngược lại thì làm tròn xuống (đến đơn vị). Với quy tắc này thì công thức sẽ là:
Mã:
=IF(ISODD(A2),ROUNDUP(A2,0),ROUNDDOWN(A2,0))
Hoặc:
Mã:
=ROUNDUP(A2,0)-ISEVEN(A2)
Cảm ơn bạn đã quan tâm, việc làm tròn số đấy gọi là "chẵn lấy lẻ bỏ" không phải là do mình nghĩ ra, mà do quy định của ngành nghề mà.
Còn 2 công thức mà bạn giúp mình không hiểu sao chỉ thấy báo #NAME? , vì mình dùng Office 2003. Bạn xem lại giúp mình, xin cảm ơn bạn.
 

File đính kèm

Cảm ơn bạn đã quan tâm, việc làm tròn số đấy gọi là "chẵn lấy lẻ bỏ" không phải là do mình nghĩ ra, mà do quy định của ngành nghề mà.
Còn 2 công thức mà bạn giúp mình không hiểu sao chỉ thấy báo #NAME? , vì mình dùng Office 2003. Bạn xem lại giúp mình, xin cảm ơn bạn.
Trước hết, tôi nhầm một chút ở công thức trên: Thay vì gõ ISODD(A2) thì phải sửa lại thành ISODD(QUOTIENT(A2,1)), tương tự cho hàm ISEVEN.
Hiện tại tôi không dùng Excel 2003 nên không nhớ chính xác là trên Excel 2003 có 2 hàm ISODD và ISEVEN không. Nếu không có thì bạn có thể thay 2 công thức trên bởi 2 công thức này:
Mã:
=IF(MOD(QUOTIENT(A2,1),2),ROUNDUP(A2,0),ROUNDDOWN(A2,0))
Mã:
=ROUNDDOWN(A2,0)+MOD(QUOTIENT(A2,1),2)
 
Trước hết, tôi nhầm một chút ở công thức trên: Thay vì gõ ISODD(A2) thì phải sửa lại thành ISODD(QUOTIENT(A2,1)), tương tự cho hàm ISEVEN.
Hiện tại tôi không dùng Excel 2003 nên không nhớ chính xác là trên Excel 2003 có 2 hàm ISODD và ISEVEN không. Nếu không có thì bạn có thể thay 2 công thức trên bởi 2 công thức này:
Mã:
=IF(MOD(QUOTIENT(A2,1),2),ROUNDUP(A2,0),ROUNDDOWN(A2,0))
Mã:
=ROUNDDOWN(A2,0)+MOD(QUOTIENT(A2,1),2)
Thật là buồn vì mình đã làm theo hướng dẫn của bạn mà vẫn chưa được.
 
Trước hết, tôi nhầm một chút ở công thức trên: Thay vì gõ ISODD(A2) thì phải sửa lại thành ISODD(QUOTIENT(A2,1)), tương tự cho hàm ISEVEN.
Hiện tại tôi không dùng Excel 2003 nên không nhớ chính xác là trên Excel 2003 có 2 hàm ISODD và ISEVEN không. Nếu không có thì bạn có thể thay 2 công thức trên bởi 2 công thức này:
Mã:
=IF(MOD(QUOTIENT(A2,1),2),ROUNDUP(A2,0),ROUNDDOWN(A2,0))
Mã:
=ROUNDDOWN(A2,0)+MOD(QUOTIENT(A2,1),2)
Phúc cho hỏi sao không dùng hàm INT mà dùng hàm QUOTIENT (lấy phần nguyên của 1 phép chia)?
Với số 1.5, nếu "chẵn lấy lẻ bỏ" thì đây là số lẻ, vậy phải làm tròn lên 2, sao a.nguoidensau lại cho kết quả là 1?
 
Thật là buồn vì mình đã làm theo hướng dẫn của bạn mà vẫn chưa được.
Bạn xem trong file này xem sao. Trong đó tôi có chụp một cái hình mà công thức tính được trên máy tôi (Excel 2010), chứng tỏ rằng công thức có trả về kết quả.
 

File đính kèm

Bạn leonguyenz ah, câu cửa miệng là " chẵn lấy lẻ bỏ" như vậy. Nhưng việc làm tròn số tuân thủ theo kiểu những số lẻ mà đằng sau dấu chấm(.) là 5 thì tăng lên 1 đơn vị, còn nếu chẵn thì giữ nguyên. Quy định hơi buồn cười phải không bạn, nhưng vẫn tồn tại mấy chục năm nay.
 
Phúc cho hỏi sao không dùng hàm INT mà dùng hàm QUOTIENT (lấy phần nguyên của 1 phép chia)?
Với số 1.5, nếu "chẵn lấy lẻ bỏ" thì đây là số lẻ, vậy phải làm tròn lên 2, sao a.nguoidensau lại cho kết quả là 1?
Hàm INT hay hàm QUOTIENT thì với trường hợp này cũng như nhau thôi mà.
Còn vấn đề thứ 2 mà Thảo thắc mắc thì mình cũng đã thắc mắc ngay tại bài #2 rồi đó, nhưng chưa thấy tác giả phản hồi gì.
 
Bạn xem trong file này xem sao. Trong đó tôi có chụp một cái hình mà công thức tính được trên máy tôi (Excel 2010), chứng tỏ rằng công thức có trả về kết quả.
Lạ thật, công thức giống y chang nhau mà 1 file cho kết quả( bài#7), 1 file không(bài#3). Nhưng có 1 điều đặc biệt là khi mình đưa con trỏ về cuối công thức D2 của bạn nghiaphuc và Enter thì lại cho kết quả #NAME? Mình không thể hiểu được tại sao lại như vậy.
 
Lạ thật, công thức giống y chang nhau mà 1 file cho kết quả( bài#7), 1 file không(bài#3). Nhưng có 1 điều đặc biệt là khi mình đưa con trỏ về cuối công thức D2 của bạn nghiaphuc và Enter thì lại cho kết quả #NAME? Mình không thể hiểu được tại sao lại như vậy.
Office 2003, bạn phải cài Analysis Toolpak
 
Office 2003 thì bạn dùng cái này!
Mã:
=FLOOR(ROUNDUP(A2,0),2)
Đúng là công thức của bạn phù hợp với Office 2003, vấn đề của mình đã được giải quyết. Mình xin cảm ơn bạn suu16b, nghiaphuc và những người khác đã quan tâm tới vướng mắc của mình. Xin chào mọi người.
 
Hàm INT hay hàm QUOTIENT thì với trường hợp này cũng như nhau thôi mà.
Còn vấn đề thứ 2 mà Thảo thắc mắc thì mình cũng đã thắc mắc ngay tại bài #2 rồi đó, nhưng chưa thấy tác giả phản hồi gì.
Mình xin lỗi các bạn vì sự sơ xuất, lẽ ra 1.5 phải làm tròn là 2.0
 
Sorry vì không đọc mấy bài ở trên. Bạn dùng công thức ở bài #11 đi
Lại có không ổn rồi bạn susu16b và mọi người ơi!
Không ổn ở chỗ: Nếu cột A mà có các số từ 0.1 đến 0.99 thì số làm tròn lại là 0. Nói cụ thể là những số nào có đuôi .5 thì mới áp dụng như công thức của bạn suu16, còn những số lớn hơn .5 thì phải tăng lên 1 đơn vị, ví dụ 0.6 , 0.75.......---> làm tròn 1.0 .
 

File đính kèm

Lại có không ổn rồi bạn susu16b và mọi người ơi!
Không ổn ở chỗ: Nếu cột A mà có các số từ 0.1 đến 0.99 thì số làm tròn lại là 0. Nói cụ thể là những số nào có đuôi .5 thì mới áp dụng như công thức của bạn suu16, còn những số lớn hơn .5 thì phải tăng lên 1 đơn vị, ví dụ 0.6 , 0.75.......---> làm tròn 1.0 .
Do file bạn đưa thì 0,5->1, nếu vậy thì bạn thêm vào
Mã:
=IF(AND(A9>0.5,A9<=1),1,FLOOR(ROUNDUP(A9,0),2))
 
Web KT

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

Back
Top Bottom