Xin giúp đỡ khẩn cấp về công thức Excel - SOS?

Thảo luận trong 'Ứng dụng Excel' bắt đầu bởi fcf01010001, 1 Tháng chín 2005.

4,426 lượt xem

  1. fcf01010001

    fcf01010001 Thành viên sơ cấp

    Bài viết:
    4
    Đã được thích:
    0
    Nơi ở:
    Ha Noi
    Tôi đang làm bảng báo cáo trong Excel gặp phải tình huống sau:

    -Ô C3 có giá trị lẻ là 4,03
    Với điều kiện phần lẻ =< 0,05 thì lấy giá trị của phần lẻ là 0,5 (tức là phải tính giá trị của ô D3 là 4,5)

    -Ô C4 có giá trị lẻ là 8,08
    Với điều kiện phần lẻ >= 0,06 và <= 0,09 thì lấy giá trị của phần lẻ là 1 (tức là phải tính giá trị của ô D3 là 9)

    Tôi đã tim nhiều cách nhưng chưa lập được công thức thỏa mãn điều kiện trên để tính giá trị sang ô kế bên.

    Vậy các anh các chị các bạn am hiểu Excel giúp mình nhe! Mình đang rất cần để báo cáo vì mình cần phải tính gần 1000 giá trị như trên.

    Cám ơn rất nhiều. Mong được hồi đáp sớm!

    fcf01010001
     
    #1
  2. adam_tran

    adam_tran Steel Partner

    Bài viết:
    1,373
    Đã được thích:
    32
    Nơi ở:
    Goooogle
    Tức là bạn muốn làm tròn 0.5 hoặc 1. Tôi có một bài tương tự với cách làm tròn tiền đến 500 đồng.
    Công thức như vậy: Ô C3 chứa giá trị, ở ô D3 nhập công thức:
    =IF(MOD(C3;1)<=0,05;INT(C3)+0,5;INT(C3)+1)

    Chú ý tớ dùng list seprator là dấu ";", có thể Excel của bạn dùng dấu ",". Dấu thập phân là dấu ",", có thể Excel của bạn là dấu "."
     
    Last edited: 1 Tháng chín 2005
    #2
  3. ForestC

    ForestC Thành viên sơ cấp

    Bài viết:
    377
    Đã được thích:
    1
    Nơi ở:
    E'rywhere
    Bạn đặt vấn đề vẫn chưa chính xác đâu nhé. Trường hợp số lẻ của bạn là 0,99 thì sao? Lúc đó theo tôi hiểu là sẽ làm tròn thành 1 đấy. Bạn có thể dùng hàm MOD, INT, hoặc cũng có thể dùng hàm làm tròn xuống ROUNDDOWN

    =ROUNDDOWN(c3;0)+IF(c3-ROUNDDOWN(c3;0)<0,05;0,5;1)
     
    Last edited: 1 Tháng chín 2005
    #3
  4. SA_DQ

    SA_DQ Thành viên thân thiết

    Bài viết:
    433
    Đã được thích:
    38
    Nơi ở:
    HCM city
    Thông báo: Có thể có lỗi bỡi hệ đo lường kiểu Mĩ!

    Hồi trước mình làm tròn số để viết hoá đơn bán hàng thỉnh thoãng vẫn bị sai bỡi lẽ theo mình nghĩ hệ đo lường Mĩ có xung đột (lâu lâu) với hệ Fáp; Xin cảnh báo vậy, xem sao nha?!
     
    #4
  5. fcf01010001

    fcf01010001 Thành viên sơ cấp

    Bài viết:
    4
    Đã được thích:
    0
    Nơi ở:
    Ha Noi
    Cám ơn mọi người đã giúp đỡ minh!

    Mình đã thử công thức của Adam_tran :
    ------------------------------------------------------------
    Công thức như vậy: Ô C3 chứa giá trị, ở ô D3 nhập công thức:
    =IF(MOD(C3;1)<=0,05;INT(C3)+0,5;INT(C3)+1)
    ------------------------------------------------------------

    - Công thức đã đạt kết quả mong muốn đối với những Cell có giá trị <10 - giả sử là 8,03 thì sẽ cho cho giá trị theo công thức tại ô kế là 8,5 hoặc 8,07 sẽ cho giá trị theo công thức tại ô kế là : 9

    -Nhưng đối với những Cell có giá >10 ví dụ 12,03 hay 12,07 thì cho giá trị theo công thức tại ô kế bên đều là 13.

    Vậy mong Adam_tranmọi người kiểm tra giúp...

    Cám ơn nhiều!
    fcf01010001
     
    #5
  6. SA_DQ

    SA_DQ Thành viên thân thiết

    Bài viết:
    433
    Đã được thích:
    38
    Nơi ở:
    HCM city
    Viết hàm người dùng:

    Function LamTron(So as Double,ThFan As Integer) as Double
    LamTron=Int(So * 10 ^ ThFan + 0,50001)/10 ^ ThFan
    End Fuction
     
    #6
  7. adam_tran

    adam_tran Steel Partner

    Bài viết:
    1,373
    Đã được thích:
    32
    Nơi ở:
    Goooogle
    Công thức tớ bị sai, ha ha, không để ý, sorry mọi người, để tớ sửa lại cho hoàn chỉnh.
    =IF(MOD(C3;1)=0;C3;IF(MOD(C3;1)>0,05;INT(C3)+1;INT(C3)+0,5))
    Công thức đã đúng thì đúng hết, không sai đâu.
    Chẳng qua khi làm tròn số thập phân là 0,5, nếu ô không hiển thị hết thì Excel tự làm tròn lên, bạn chỉ cần kéo rộng cell hoặc Format cell sang Number với 1 chữ số thập phân, bạn sẽ thấy.
     
    Last edited: 1 Tháng chín 2005
    #7
  8. workman

    workman Thành viên sơ cấp

    Bài viết:
    372
    Đã được thích:
    0
    Nơi ở:
    Ho Chi Minh
    Bài toán của bạn hơi lạ, nhỉ. Nếu 4.03 thì làm tròn thành 4.5 còn nếu 4.08 thì làm tròn thành 5. Tôi giả sử ta có x=4.03, y=4.08 và z=4.5. Theo như công thức của bạn thì ta tính ra y>z (?).

    Theo như logic bình thường thì có lẽ phải là nếu 4.3 thì làm tròn thành 4.5, còn nếu 4.8 thì làm tròn thành 5. Các bác nghĩ có đúng không?
     
    #8
  9. DucThuan

    DucThuan Tè lè ra rồi !

    Bài viết:
    173
    Đã được thích:
    4
    Nơi ở:
    Đầu đường xó chợ
     
    Last edited: 1 Tháng chín 2005
    #9
  10. fcf01010001

    fcf01010001 Thành viên sơ cấp

    Bài viết:
    4
    Đã được thích:
    0
    Nơi ở:
    Ha Noi
    Xin gửi lời cám ơn tới các bạn đã tham gia đóng góp giúp mình, thành thật cám ơn.

    Mình có thiếu sót là chưa nói rõ tình huống sử dụng công thức làm tròn này nên đã làm các bạn chưa hiểu rõ thực chất của nó.

    Mình đang tính chế độ cho người lao động, nên con số tính toan lẻ chỉ thể hiện theo qui định trong cơ sở dữ liệu là : 10,04 tương ứng với 10 năm 4 tháng - còn 10,11 tương ứng với 10 năm 11 tháng.

    Do vậy khi làm tròn tính toán chế độ sẽ làm tròn thành 0,5 năm đối với trường hợp dưới 6 tháng, còn làm tròn 1 năm đối với trường hợp trên 6 tháng và dưới 12 tháng.

    Đối với yêu cầu tính toán của mình thì công thức của Adam_tran thỏa mãn yêu cầu nhất.

    Một lần nữa xin thanks to:

    Adam_tran + MaiKa + SA_DQ + Workman + tsf
    :two:

    Cám ơn diễn đàn đã mang lại kiến thức và gắn kết chúng ta.

    fcf01010001 Thanks to All
     
    #10

Chia sẻ trang này