Mừng Sinh Nhật GPE 11: sáng 25/6 Hà Nội; 1/7 Huế/Đà Nẵng; Trưa 2/7 TPHCM

Hàm làm tròn số trong Excel

Thảo luận trong 'Hàm và công thức Excel' bắt đầu bởi minh1977, 15 Tháng chín 2008.

  1. minh1977

    minh1977 Thành viên mới

    Tôi muốn làm tròn số trong Excel như ví dụ sau: số 1,110,650, làm tròn số là 1,110,000. Vậy phải dùng hàm nào trong Excel. Vui lòng chỉ giúp!
     
  2. TKT

    TKT Thành viên tiêu biểu

    Bạn dùng hàm ROUNDDOWN.
    =ROUNDDOWN(1 110 650,-3)
     
  3. ChanhTQ@

    ChanhTQ@ Thành viên già cỗi.

    Cho hỏi ké một xíu với

    Mình muốn làm tròn đến 5.000 đồng, thì là sao:
    từ 3 đ đến 8 đồng thì lấy thành 5.000;
    Dưới đó thì bỏ Và trên đó thì cọng thêm 10.000 đ
    Xin cảm ơn các bạn.
     
  4. cao mạnh sơn

    cao mạnh sơn Tôi đồng ý

    Hàm Round có thể làm tròn từ 5.000 đ trở lên thành 10.000 đ nhưng 3 đ đến 8 đ làm tròn thành 5.000 đ thì mình chưa thử,có lẽ phải dùng cách khác thôi
     
  5. cadafi

    cadafi New Style! New Life! Staff Member Super Moderator

    Vậy thì bạn lồng hàm IF vào:
     
  6. ndu96081631

    ndu96081631 Ăn cùng GPE, Ở cùng GPE, Sống cùng GPE Staff Member Super Moderator

    Cái này thì không dùng ROUND mà dùng tí "xảo thuật"
    Giã sử ta có các cell từ A1 đến A30 chứa các số 1, 2, 3.... vân vân...
    Vậy dùng công thức này xem:
     
    Lần chỉnh sửa cuối: 15 Tháng chín 2008
  7. cao mạnh sơn

    cao mạnh sơn Tôi đồng ý

    To:Ca_Dafi
    Chắc ý tác giả không phải vậy đâu,theo mình nghĩ có thể là với các số hàng nghìn nếu trên 8000 thì làm tròn thành 10000,nếu trong khoảng 3000 đến 8000 thì làm tròn thành 5000 còn dưới 3000 thì làm tròn xuống còn 0.
    Nếu đúng như vậy thì công thức phải là
    =INT(A1/10000)*10000+IF(MOD(A1,10000)>8000,10000,IF(MOD(A1,10000)<3000,0,5000))
    Đoán mò vậy thôi.
     
  8. ptm0412

    ptm0412 Excel Ordinary Member Staff Member Super Moderator

    Câu hỏi kỳ quá.
    Nếu làm tròn đến 5.000, thì 3đ đến 8đ là cả số hay chỉ là phần lẻ của thí dụ như 11005?
    Trên đó thì cộng 10.000đ, vậy 9đ cũng thành 10.000đ, 2 triệu cũng thành 10.000đ?

    Nếu hiểu như Cao Mạnh Sơn (chắc đúng), thì có thể giải quyết bằng ceiling() kết hợp với Floor() và mod()
     
  9. cadafi

    cadafi New Style! New Life! Staff Member Super Moderator

    Vâng, đồng ý với cao mạnh sơn về việc này. Mình cũng nhấn mạnh rằng không có hàm nào thỏa mãn điều kiện của tác giả (trừ UDF). Phải lồng cái gì đó vào, không dùng IF thì dùng hàm khác.
     
  10. tintinmilou

    tintinmilou Thành viên mới

    Em có cái công thức này, ngắn hơn anh Cao Mạnh Sơn nhiều, nhưng ra đáp số y chang công thức của anh:
    =IF(OR(A1<3000,A1>=8000),ROUND(A1,-4),5000)
     
  11. tintinmilou

    tintinmilou Thành viên mới

    Chắc là bạn ấy nói theo kiểu bình dân đó, người ta hay gọi 3000 là 3 đồng í mà.
    Nhưng, bi giờ nếu cho là vậy, nghĩa là 3 đồng = 3000, 8 đồng = 8000, thì cái công thức này của Ca_Dafi:
    =IF(A1<3,0,IF(A1<=8,5*ROUNDUP(A1,-3),ROUNDUP(A1,-4)))
    Nó ra đáp số làm sao í...

    Xin phép thay 3 = 3000, 8 = 8000, và bỏ cái 5* đi, thì cũng không ra đúng yêu cầu:
    =IF(A1<3000,0,IF(A1<=8000,ROUNDUP(A1,-3),ROUNDUP(A1,-4)))
    Nghĩa là với những số trong khoảng 3000 đến 8000, nó sẽ làm tròn lên hàng ngàn gần nhất thôi, chứ không phải làm tròn thành 5000.
    Ca_Dafi xem lại tí ...
     
  12. ndu96081631

    ndu96081631 Ăn cùng GPE, Ở cùng GPE, Sống cùng GPE Staff Member Super Moderator

    Dư dấu =
    Các bạn lưu ý tác giã nói rằng:
    Cộng thêm nha... chứ không phải làm tròn thành 10000
    Ai cũng thắc mắc vì yêu cầu chưa được rõ ràng, dù sao mong bạn ChanhTQ@ nói rõ thêm 1 chút
     
  13. cao mạnh sơn

    cao mạnh sơn Tôi đồng ý

    Bạn kiểm tra lại đâu có giống kết quả.Khác nhau hoàn toàn đấy chứ
     
  14. cadafi

    cadafi New Style! New Life! Staff Member Super Moderator

    Bạn suy luận vậy chưa đúng, vậy tại sao tác giả nói:
    Xin lỗi bạn, theo mình trong toán học 3 đồng và 3000 đồng khác nhau. Vì thế cách giải cũng sẽ khác nhau. Hãy chờ tác giả nói rõ thêm cái đã.
     
    Lần chỉnh sửa cuối: 15 Tháng chín 2008
  15. tintinmilou

    tintinmilou Thành viên mới

    Anh xem lại giúp em:
    Column1Column2Column3Column4Column5
    A​
    B​
    C​

    1​
    Số​
    =IF(OR(A1<3000,A1>=8000),ROUND(A1,-4),5000)​
    =INT(A1/10000)*10000+IF(MOD(A1,10000)>8000,10000,IF(MOD(A1,10000)<3000,0,5000))​

    2​
    2,053​
    0​
    0​

    3​
    2,861​
    0​
    0​

    4​
    5,102​
    5,000​
    5,000​

    5​
    8,455​
    10,000​
    10,000​

    6​
    4,023​
    5,000​
    5,000​

    7​
    6,842​
    5,000​
    5,000​

    8​
    1,417​
    0​
    0​

    9​
    2,637​
    0​
    0​

    10​
    6,277​
    5,000​
    5,000​

    11​
    5,329​
    5,000​
    5,000​

    12​
    7,215​
    5,000​
    5,000​

    13​
    2,767​
    0​
    0​

    14​
    7,769​
    5,000​
    5,000​

    15​
    1,526​
    0​
    0​

    16​
    4,350​
    5,000​
    5,000​

    17​
    9,073​
    10,000​
    10,000​

    18​
    6,246​
    5,000​
    5,000​

    19​
    2,335​
    0​
    0​

    20​
    4,240​
    5,000​
    5,000​

    21​
    4,331​
    5,000​
    5,000​

    22​
    8,618​
    10,000​
    10,000​

    23​
    1,224​
    0​
    0​

    24​
    1,387​
    0​
    0​

    25​
    9,702​
    10,000​
    10,000​
     
  16. ptm0412

    ptm0412 Excel Ordinary Member Staff Member Super Moderator

    Bỏ cái 5* của người ta đi, thì làm tròn đến hàng ngàn gần nhất chứ sao nữa? Để nguyên 5* thì mới là 5000 chứ!
    Cái này không giống y chang Cao Mạnh Sơn đâu. Thử làm tròn với A1 là 16.000 xem.
    Công thức Sơn ra kq 15.000, của tintin là 20.000
    Nghĩa là với A1>8.000, nó làm tròn round(A1,-4) tuốt tuột.

    Của Sơn là đúng nhất theo cách hiểu của Sơn.
     
  17. o0o

    o0o Thành viên mới

    mình viết lại công thức của Sơn theo cách của mình để dễ hiểu hơn:
    =IF(OR(MOD(A1,10000)<3000,MOD(A1,10000)>8000),ROUND(A1,-4),ROUNDDOWN(A1,-4)+5000)
     
  18. BNTT

    BNTT Bùi Nguyễn Triệu Tường

    Hỏi sao trả lời vậy, khỏi suy nghĩ, khỏi tranh luận:
    =IF(B1<3, 0, IF(B1<=8, 5000, B1+10000)
    Nếu <3 thì bỏ (=0), rồi từ 3 cho đến 8 thì bằng 5000, trên 8 thì lấy số đó cộng thêm 10000...
     
    Lần chỉnh sửa cuối: 15 Tháng chín 2008
  19. ChanhTQ@

    ChanhTQ@ Thành viên già cỗi.

    Thành thật xin lỗi các bạn vì viết văn dỡ.

    Mình muốn rằng:
    Với số tiền là 2.500đ => 0 đ
    . . . 5.600 => 5.000 đ;
    8.900đ => 10.000 đ
    . . .
    15.678 đ => 15.000;
    98.762.540 đ => 98.760.000 đ
    124.568.789 đ => 124.570.000 đ
     
  20. BNTT

    BNTT Bùi Nguyễn Triệu Tường

    Vẫn khó hiểu quá, bạn ơi.
    Có phải quy luật của bạn là thế này:

    000.002.500 = 000.000.000
    098.762.540 = 098.760.000

    000.005.600 = 000.005.000
    000.015.678 = 000.015.000

    000.008.900 = 000.000.000 + 10000 = 000.010.000
    123.568.789 = 123.560.000 + 10000 = 123.570.000


    Nghĩa là phải xét đến 4 con số cuối cùng tính từ trái sang (hàng ngàn) ?
    Bạn có thể cho thêm nhiều nhiều ví dụ không ?
     
    Lần chỉnh sửa cuối: 15 Tháng chín 2008

Chia sẻ trang này