PDA

View Full Version : Hỏi về vấn đề làm tròn số



billgate0104
11-11-09, 10:24 PM
làm tròn phần thập phân< 0,25 làm tròn thành 0
0,25=<phần thập phân <0,75 làm tròn thành 0,5
>=0,75 làm tròn thành 1.0
Ví dụ 8,2 thì làm tròn là 8
anh chị cho em biết nên sử dụng hàm nào và làm như thế nào**~**
thanks everybody
}}}}}

BNTT
11-11-09, 10:51 PM
làm tròn phần thập phân< 0,25 làm tròn thành 0
0,25=<phần thập phân <0,75 làm tròn thành 0,5
>=0,75 làm tròn thành 1.0
Ví dụ 8,2 thì làm tròn là 8
anh chị cho em biết nên sử dụng hàm nào và làm như thế nào**~**
thanks everybody
}}}}}
Bạn dùng hàm MROUND nhé:

=MROUND(A1, 0.5)
Với A1 là cái ô chứa con số bạn muốn làm tròn đến bội số của 0.5

viehoai
11-11-09, 11:21 PM
Bạn dùng hàm MROUND nhé:

=MROUND(A1, 0.5)
Với A1 là cái ô chứa con số bạn muốn làm tròn đến bội số của 0.5
Xin hỏi hàm này anh đẻ ra hay của ông Bill vậy?

BNTT
11-11-09, 11:26 PM
Xin hỏi hàm này anh đẻ ra hay của ông Bill vậy?
Dạ xin thưa, hàm MROUND là của Microsoft Excel ạ. Tôi là đàn ông, không có khả năng đẻ.

Bạn có thể tham khảo thêm ở đây: Hàm MROUND (http://www.giaiphapexcel.com/forum/showthread.php?p=52162#post52162)

viehoai
11-11-09, 11:33 PM
Dạ xin thưa, hàm MROUND là của Microsoft Excel ạ. Tôi là đàn ông, không có khả năng đẻ.

Bạn có thể tham khảo thêm ở đây: Hàm MROUND (http://www.giaiphapexcel.com/forum/showthread.php?p=52162#post52162)
Sao mình dùng Excel 2003 mà không có hàm này nhỉ. Thử thì báo lỗi #Name?

BNTT
11-11-09, 11:34 PM
Sao mình dùng Excel 2003 mà không có hàm này nhỉ. Thử thì báo lỗi #Name?
Excel 2000 đã có hàm này. Nhưng phải cài cái addin Analysis Toolpak vào.

billgate0104
12-11-09, 07:26 AM
Hix em làm theo anh mà nó báo lỗi.
anh hướng dẫn cụ thể dùm em đc hok,em mới học excel

Hai Lúa Miền Tây
12-11-09, 07:39 AM
Hix em làm theo anh mà nó báo lỗi.
anh hướng dẫn cụ thể dùm em đc hok,em mới học excel
Bạn vào Tools\Add-ins..., click chọn vào Analysis Toolpak, nhấn OK, đợi 1 chút cho nó thiết lập là xong.

http://www.giaiphapexcel.com/forum/attachment.php?attachmentid=36077&stc=1&d=1257986372

billgate0104
12-11-09, 08:18 AM
Bạn dùng hàm MROUND nhé:
=MROUND(A1, 0.5)Với A1 là cái ô chứa con số bạn muốn làm tròn đến bội số của 0.5
em đã làm theo nhưng nó báo thế này
http://c.uploadanh.com//upload/1/595/B40.4187648_1_1.jpg

salam
12-11-09, 08:21 AM
em đã làm theo nhưng nó báo thế này
http://c.uploadanh.com//upload/1/595/B40.4187648_1_1.jpg
Nhìn cũng biết là A1 của bạn định dạng text rồi, công thức không hiểu là đúng bạn nhập lại A1 dạng number xem.

AnhTuan-Hacinco
12-11-09, 08:43 AM
mình có một cột số liệu như file đính kèm:
Tại đây các số liệu là số lẻ đến hàng đơn vị. Mình muốn cũng tại cột này làm tròn các số này lên đến hàng nghìn nhưng mà tăng lên.
Ví dụ: 18343 thành 19000
Do cột của mình có nhiều số liệu nên các bạn xem có cách nào thao tác luôn cho cả cột thì tốt.
Cảm ơn các bạn.

Hai Lúa Miền Tây
12-11-09, 08:44 AM
mình có một cột số liệu như file đính kèm:
Tại đây các số liệu là số lẻ đến hàng đơn vị. Mình muốn cũng tại cột này làm tròn các số này lên đến hàng nghìn nhưng mà tăng lên.
Ví dụ: 18343 thành 19000
Do cột của mình có nhiều số liệu nên các bạn xem có cách nào thao tác luôn cho cả cột thì tốt.
Cảm ơn các bạn.
Bạn dùng hàm sau nhé
=ROUNDUP(C4,-3)
Kéo xuống là xong

BNTT
12-11-09, 09:02 AM
mình có một cột số liệu như file đính kèm:
Tại đây các số liệu là số lẻ đến hàng đơn vị. Mình muốn cũng tại cột này làm tròn các số này lên đến hàng nghìn nhưng mà tăng lên.
Ví dụ: 18343 thành 19000
Do cột của mình có nhiều số liệu nên các bạn xem có cách nào thao tác luôn cho cả cột thì tốt.
Cảm ơn các bạn.
Trong Excel có 2 hàm chuyên phục vụ cho chuyện "làm tròn nhưng mà tăng lên" hoặc "làm tròn nhưng mà giảm xuống": ROUNDUP và ROUNDDOWN.

Nhận thấy hình như đa số trong chúng ta, khi nói đến làm tròn, chỉ nghĩ đến mỗi cái hàm ROUND. Thật ra, ngoài hàm ROUND, còn có nhiều hàm khác có thể dùng để làm tròn: ROUNDUP, ROUNDDOWN, MROUND, CEILING, FLOOR, INT, TRUNC... Các bạn có thể tham khảo ở phần Tra cứu hàm Excel ở chữ ký của tôi.

AnhTuan-Hacinco
12-11-09, 09:38 AM
Bạn dùng hàm sau nhé
=ROUNDUP(C4,-3)
Kéo xuống là xong
bạn ơi mình làm được rồi nhưng mà phải tạo cột phụ.
mình muốn làm tròn ngay tại cột C thì làm thế nào.

Hai Lúa Miền Tây
12-11-09, 09:50 AM
bạn ơi mình làm được rồi nhưng mà phải tạo cột phụ.
mình muốn làm tròn ngay tại cột C thì làm thế nào.
Bạn dùng cột phụ, xong copy cột phụ đó dán giá trị đè lên cột C, xong rồi xoá cột phụ đi là xong.

manhnguyenmp
12-11-09, 10:06 AM
bạn dùng hàm =ROUND(A1, 0)
tại a1 bạn đánh số vào sẽ thấy

BNTT
12-11-09, 10:12 AM
bạn dùng hàm =ROUND(A1, 0)
tại a1 bạn đánh số vào sẽ thấy
Thấy cái gì? Và bạn trả lời cho ai vậy?

AnhTuan-Hacinco
12-11-09, 01:14 PM
Bạn dùng cột phụ, xong copy cột phụ đó dán giá trị đè lên cột C, xong rồi xoá cột phụ đi là xong.
bạn ơi có cách khác không.
Nếu làm như vây các đường link số liệu của mình mất hết mà đánh công thức trực tiếp thì....lâu quá. hic

Hai Lúa Miền Tây
12-11-09, 01:57 PM
bạn ơi có cách khác không.
Nếu làm như vây các đường link số liệu của mình mất hết mà đánh công thức trực tiếp thì....lâu quá. hic
Vậy thì bạn dùng code vậy.


Sub LamTron()
Dim rng
Dim MyCell
Set rng = Range("C4:C" & Range("c65536").End(xlUp).Row)
For Each MyCell In rng
MyCell.Value = Application.RoundUp(MyCell, -3)
Next
End Sub


Tham khảo thêm file nhé

billgate0104
13-11-09, 10:44 AM
Bạn dùng hàm MROUND nhé:
=MROUND(A1, 0.5)Với A1 là cái ô chứa con số bạn muốn làm tròn đến bội số của 0.5
giải thick cho em đây tại sao là số 0.5 tý đc ko em ko hiểu lắm**~**

BNTT
13-11-09, 10:47 AM
giải thick cho em đây tại sao là số 0.5 tý đc ko em ko hiểu lắm**~**
Bạn có biết "bội số" là gì không?

Yêu cầu của bạn, kết quả phải là những con số 0, 0.5, 1, 1.5, 2, 2.5 v.v... có đúng không?

Những con số kết quả mà bạn mong muốn đó, có phải là bội số của 0.5 không?

billgate0104
13-11-09, 11:04 AM
Bạn có biết "bội số" là gì không?

Yêu cầu của bạn, kết quả phải là những con số 0, 0.5, 1, 1.5, 2, 2.5 v.v... có đúng không?

Những con số kết quả mà bạn mong muốn đó, có phải là bội số của 0.5 không?
nhờ anh chỉ giáo tý.
em ko hiểu cơ chế làm tròn của nó -+*/



Bạn có thể tham khảo thêm ở đây: Hàm MROUND (http://www.giaiphapexcel.com/forum/showthread.php?p=52162#post52162)
em đọc đây rùi mà hok hiểu lắm**~**
em mới học excel đang còn kém |||||

BNTT
13-11-09, 11:12 AM
nhờ anh chỉ giáo tý.
em ko hiểu cơ chế làm tròn của nó -+*/
em đọc đây rùi mà hok hiểu lắm**~**
em mới học excel đang còn kém |||||
Viết như thế, có cả ví dụ, mà bạn vẫn không hiểu, thì chắc bạn phải xem lại cái khả năng tư duy tính toán của bạn. Chịu thôi.

haythenhi
13-11-09, 04:07 PM
điểm tổng kết đc làm tròn sau khi tính theo quy định
- phần thập phân <0.25 làm tròn thành 0
- phần thập phân >= 0.25 và <0.75 thi làm tròn thành 0.5
- phần thập phân >= 0.75 thi làm tròn thành 1
sau đó thống kê vào bảng dưới số lượng người có kết quả từ 0=>10
Mọi người cố gắng giúp mình nhá! thanks trước

MinhCong
13-11-09, 04:11 PM
điểm tổng kết đc làm tròn sau khi tính theo quy định
- phần thập phân <0.25 làm tròn thành 0
- phần thập phân >= 0.25 và <0.75 thi làm tròn thành 0.5
- phần thập phân >= 0.75 thi làm tròn thành 1
sau đó thống kê vào bảng dưới số lượng người có kết quả từ 0=>10
Mọi người cố gắng giúp mình nhá! thanks trước
1/Bạn dùng hàm MROUND(A1;0,5) nhé.
2/Thống kê vào bảng dưới số lượng người có kết quả từ 0=>10 nghĩa là sao vậy bạn?

haythenhi
13-11-09, 04:15 PM
[]điểm tổng kết đc làm tròn sau khi tính theo quy định
(g/s điểm tk=A3*0.1+B3*0.3+C3*0.6)
- phần thập phân <0.25 làm tròn thành 0
- phần thập phân >= 0.25 và <0.75 thi làm tròn thành 0.5
- phần thập phân >= 0.75 thi làm tròn thành 1
sau đó thống kê số lượng người có kết quả từ 0=>10
Mọi người cố gắng giúp mình nhá! thanks trước[

nhưng vấn đề là: mình vừa muốn tính điểm vừa làm tròn số luôn cơ
chứ ko phải tính điểm xong, bắt đầu mới dùng ham MROUND

ptm0412
13-11-09, 04:47 PM
nhưng vấn đề là: mình vừa muốn tính điểm vừa làm tròn số luôn cơ
chứ ko phải tính điểm xong, bắt đầu mới dùng ham MROUND
Không có vấn đề gì hết. Bạn cứ tính, rồi MRound cái công thức tính đó. Hết.

billgate0104
13-11-09, 06:52 PM
Cho em hỏi là ngoài hàm mround này có sử dụng cách khác nữa ko ạ?
chẳng hạn dùng hàm if kết hơp với hàm round ???
Ai có cách khác chỉ giáo em cái//**/

tam8678
13-11-09, 07:00 PM
Cho em hỏi là ngoài hàm mround này có sử dụng cách khác nữa ko ạ?
chẳng hạn dùng hàm if kết hơp với hàm round ???
Ai có cách khác chỉ giáo em cái//**/
---
Vì bạn không hiểu nên bạn ngại xử dụng hàm Mround, bạn cứ tập làm thử vài ví dụ là hiểu ngay thôi mà, đúng không? :-=

ngocmaipretty
13-11-09, 07:07 PM
Cho em hỏi là ngoài hàm mround này có sử dụng cách khác nữa ko ạ?
chẳng hạn dùng hàm if kết hơp với hàm round ???
Ai có cách khác chỉ giáo em cái

Mround(A, b) = Round(A/b, 0)*b

Thí dụ 1: b<1

MRound(A, 0.5) = Round(A*2, 0)/2

Thí dụ 2: b>1

MRound(A, 250) = Round(A/250, 0) *250

BNTT
13-11-09, 07:46 PM
Cho em hỏi là ngoài hàm mround này có sử dụng cách khác nữa ko ạ?
chẳng hạn dùng hàm if kết hơp với hàm round ???
Ai có cách khác chỉ giáo em cái//**/
Đương nhiên là có. Nhưng tại sao bạn lại muốn như thế? Thường người ta muốn tìm một công thức ngắn nhất, tìm một hàm có sẵn để dùng, còn bạn thì lại không muốn như thế, lại muốn dài dòng... Sao vậy?

billgate0104
13-11-09, 10:04 PM
Đương nhiên là có. Nhưng tại sao bạn lại muốn như thế? Thường người ta muốn tìm một công thức ngắn nhất, tìm một hàm có sẵn để dùng, còn bạn thì lại không muốn như thế, lại muốn dài dòng... Sao vậy?
Vì đây là bài thảo luận nên làm được càng nhiều cách thì càng tốt}}}}}
Cách kia em làm đc rùi :D
Anh có thì chỉ cho em cái

ptm0412
14-11-09, 12:48 AM
Anh có thì chỉ cho em cái

Bạn đọc lại từ đầu chính topic này, có 1 cái.

ngocmaipretty
17-11-09, 07:46 AM
Vậy bài này dùng hàm gì?

ơ đấy là hàm round mà có dùng gì đến hàm if đâu
giáo viên của em ko chấp nhận dùng hàm này. vì chưa học nên ko được dùng

Chả biết thầy bà gì mà MRound không cho dùng? Nhưng chả lẽ cả Round cũng không cho dùng?

Nếu bà thầy bắt dùng hàm If, thì hàm If là 1 trong những hàm dễ nhất, chú em phải tự suy nghĩ thôi.
À, hàm Int và Mod học chưa cái đã, hay là bà thầy không cho xài luôn?

khoavu87
17-11-09, 08:07 AM
Chả biết thầy bà gì mà MRound không cho dùng? Nhưng chả lẽ cả Round cũng không cho dùng?

Nếu bà thầy bắt dùng hàm If, thì hàm If là 1 trong những hàm dễ nhất, chú em phải tự suy nghĩ thôi.
À, hàm Int và Mod học chưa cái đã, hay là bà thầy không cho xài luôn?
Chị nữa ví dụ đang học lớp 4 mà làm cách làm của lớp 5 thì Thầy nào chấp nhận. Chắc thầy yêu cầu làm đúng quy định và giới hạn sử dụng hàm nào thôi còn các hàm khác không được dùng

billgate0104
17-11-09, 10:13 AM
giáo viên của em bắt buộc là phải có hàm "if " trong đấy . Mà hàm if thì lèo nhèo lắm thế nên em mới phải hỏi ?

billgate0104
17-11-09, 10:15 AM
Chả biết thầy bà gì mà MRound không cho dùng? Nhưng chả lẽ cả Round cũng không cho dùng?

Nếu bà thầy bắt dùng hàm If, thì hàm If là 1 trong những hàm dễ nhất, chú em phải tự suy nghĩ thôi.
À, hàm Int và Mod học chưa cái đã, hay là bà thầy không cho xài luôn?
2 hàm đấy cũng chưa học. Hàm if mà dễ nhất á...hix hix

ngocmaipretty
17-11-09, 10:54 AM
Chị nữa ví dụ đang học lớp 4 mà làm cách làm của lớp 5 thì Thầy nào chấp nhận. Chắc thầy yêu cầu làm đúng quy định và giới hạn sử dụng hàm nào thôi còn các hàm khác không được dùng

Khoa à, hàm MRound có thể không cho dùng, nhưng hàm Round đơn thuần cũng không cho là thế nào?
Khoa xem công thức bài #30 chưa?

MRound(A,b) = Round(A/b, 0)*b


Mà hàm if thì lèo nhèo lắm thế nên em mới phải hỏi ?

Hàm if là dễ nhất trong các hàm mà còn than lèo nhèo thì chẳng ai giúp được nữa. Vả lại, chỉ 1 hàm If thì ai mà làm được? không And, Or, không Int, Mod!

Muốn If thì phải lấy ra được phần thập phân để so sánh điều kiện If, rồi cộng lại với số nguyên.

Thôi, chịu không điểm câu đó đi, xem bà thầy giải cách nào mà không dùng hàm khác, xong mang về dạy lại cho NgocMai!

billgate0104
17-11-09, 10:58 AM
Khoa à, hàm MRound có thể không cho dùng, nhưng hàm Round đơn thuần cũng không cho là thế nào?
Khoa xem công thức bài #30 chưa?

MRound(A,b) = Round(A/b, 0)*b



Hàm if là dễ nhất trong các hàm mà còn than lèo nhèo thì chẳng ai giúp được nữa. Vả lại, chỉ 1 hàm If thì ai mà làm được? không And, Or, không Int, Mod!

Muốn If thì phải lấy ra được phần thập phân để so sánh điều kiện If, rồi cộng lại với số nguyên.

Thôi, chịu không điểm câu đó đi, xem bà thầy giải cách nào mà không dùng hàm khác, xong mang về dạy lại cho NgocMai!
chắc em dùng 2 hàm kia cũng đc. Thày ko chấm thì thôi dù sao cũng cảm ơn chị

MinhCong
17-11-09, 11:07 AM
Bạn muốn dùng hàm if cũng được, những hơi dài 1 tí. (Kết hợp với hàm mid và left nhé.

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))

ptm0412
17-11-09, 12:07 PM
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ứ!

ngocmaipretty
17-11-09, 07:04 PM
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.

billgate0104
17-11-09, 09:57 PM
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

haythenhi
25-11-09, 03:03 PM
mround(a, b) = round(a/b, 0)*b

thí dụ 1: B<1

mround(a, 0.5) = round(a*2, 0)/2

thí dụ 2: B>1

mround(a, 250) = round(a/250, 0) *250
sao làm vậy mà kết quả 2 cách làm ko giống nhau hả bạn
:.,

ngocmaipretty
25-11-09, 04:00 PM
Bạn nhỏ xem file nha, sao lại không giống chứ.