Menu

Khắc phục lỗi #VALUE! khi dùng hàm ROUNDUP với số âm

Lường Đắc Lãm 15/06/2026 22:46 371 lượt xem 2 trả lời

Chào mọi người,

Hôm nay mình gặp một lỗi khá khó chịu khi làm việc với hàm ROUNDUP trong Excel. Bình thường mình hay dùng hàm này để làm tròn lên một số thập phân nhất định. Tuy nhiên, khi mình áp dụng nó cho một số âm, kết quả trả về lại là lỗi #VALUE!. Mình đã thử kiểm tra lại các đối số của hàm nhưng không thấy sai sót gì.

Cụ thể, công thức của mình là:

=ROUNDUP(-123.456, 2)

Theo lý thuyết, hàm ROUNDUP sẽ làm tròn số lên, tức là tiến xa hơn khỏi số 0. Với số dương 123.456, làm tròn lên 2 chữ số thập phân sẽ là 123.46. Nhưng với số âm -123.456, làm tròn lên lại có vẻ không hợp lý trong cách hiểu thông thường, và Excel trả về lỗi #VALUE!.

Sau một hồi tìm hiểu, mình phát hiện ra rằng hàm ROUNDUP (cũng như ROUNDDOWN) trong Excel không hỗ trợ làm tròn trực tiếp cho số âm theo cách này. Thay vào đó, chúng ta cần sử dụng hàm MROUND hoặc kết hợp ABS với ROUNDUP rồi thêm dấu trừ.

Cách khắc phục mình tìm được là:

  • Sử dụng hàm MROUND: =MROUND(-123.456, 0.01) (Lưu ý: MROUND sẽ làm tròn đến bội số gần nhất, không hoàn toàn giống ROUNDUP cho trường hợp này nếu bạn muốn làm tròn lên theo đúng nghĩa).
  • Kết hợp ABSROUNDUP: =-ROUNDUP(ABS(-123.456), 2). Công thức này sẽ lấy giá trị tuyệt đối của số âm, làm tròn lên theo yêu cầu, sau đó gán lại dấu âm. Kết quả là -123.45.

Mình chia sẻ trường hợp này để anh em nào gặp phải thì biết cách xử lý nhé. Nếu có cách nào khác hiệu quả hơn, mọi người cùng thảo luận.

2

À, cái lỗi #VALUE! này với ROUNDUP và số âm khá phổ biến.

Thực ra, hàm ROUNDUP làm tròn "lên" theo nghĩa là tiến xa hơn khỏi 0. Với số âm, làm tròn "lên" sẽ cho kết quả là một số có giá trị tuyệt đối nhỏ hơn. Ví dụ, ROUNDUP(-123.456, 2) đáng lẽ phải cho ra -123.45.

Nếu bạn muốn làm tròn số âm theo hướng tiến về 0 (tức là làm tròn "xuống" theo cách hiểu thông thường), bạn có thể thử dùng hàm ROUNDDOWN hoặc kết hợp với hàm ABS để lấy giá trị tuyệt đối trước rồi mới làm tròn.

Ví dụ, để có kết quả -123.45: =ROUNDDOWN(-123.456, 2) Hoặc: =-(ROUNDUP(ABS(-123.456), 2))

Bạn thử xem cách nào phù hợp với yêu cầu của mình nhé!

0

Chào bạn,

Đúng là hàm ROUNDUP đôi khi gây nhầm lẫn với số âm thật. Như bạn kia đã giải thích, ROUNDUP sẽ làm tròn "lên" theo hướng xa 0 hơn. Với số âm, việc này có nghĩa là làm cho giá trị tuyệt đối của nó nhỏ đi.

Để đạt được kết quả mà bạn mong muốn, tức là làm tròn số âm tiến về 0 (ví dụ: -123.456 làm tròn thành -123.45), bạn có thể dùng hàm ROUND thay vì ROUNDUP. Hàm ROUND sẽ làm tròn đến chữ số thập phân gần nhất, và với số âm, nó sẽ tự động hiểu là làm tròn về phía 0.

Thử công thức này xem sao nhé: ``excel =ROUND(-123.456, 2) `` Hy vọng cách này giúp bạn giải quyết vấn đề!

1

Bạn cần đăng nhập để trả lời chủ đề này.

Đăng nhập Đăng ký