ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   VBA Rounding (https://www.excelbanter.com/excel-programming/451055-vba-rounding.html)

Gene Haines

VBA Rounding
 
I am trying to see if the VBA rounding function will round to even. As an example:

Cell A1:A6
2.45
2.75
2.89
2.67
2.56
2.32

Result from above
2.4
2.8
2.8
2.6
2.6
2.4

I cannot find anything online that will accomplish this. Does anyone know the code in VBA that may work?

Thank you

Gene Haines

Peter T[_7_]

VBA Rounding
 
Looks like you want a sort of bankers' rounding but to a 1 place decimal

One way, but warning only lightly tested with your example data

arr = Array(2.45, 2.75, 2.89, 2.67, 2.56, 2.32)

For i = 0 To UBound(arr)
Debug.Print arr(i), Int((arr(i) * 10 + Int(arr(i) * 10) Mod 2)) / 10
Next

2.45 2.4
2.75 2.8
2.89 2.8
2.67 2.6
2.56 2.6
2.32 2.4

Curiosity, what's the purpose for such rounding?

Regards,
Peter T


"Gene Haines" wrote in message
...

I am trying to see if the VBA rounding function will round to even. As
an example:

Cell A1:A6
2.45
2.75
2.89
2.67
2.56
2.32

Result from above
2.4
2.8
2.8
2.6
2.6
2.4

I cannot find anything online that will accomplish this. Does anyone
know the code in VBA that may work?

Thank you

Gene Haines




Gene Haines

Quote:

Originally Posted by Gene Haines (Post 1621934)
I am trying to see if the VBA rounding function will round to even. As an example:

Cell A1:A6
2.45
2.75
2.89
2.67
2.56
2.32

Result from above
2.4
2.8
2.8
2.6
2.6
2.4

I cannot find anything online that will accomplish this. Does anyone know the code in VBA that may work?

Thank you

Gene Haines

Peter: Guy in work is a metallurgist and is using this type of rounding for chemical composition. He had asked me if I knew a way to do this. Of course I volunteered to help him out.

Thanks for your response

Gene

witek

VBA Rounding
 
Gene Haines wrote:
Gene Haines;1621934 Wrote:
I am trying to see if the VBA rounding function will round to even. As
an example:

Cell A1:A6
2.45
2.75
2.89
2.67
2.56
2.32

Result from above
2.4
2.8
2.8
2.6
2.6
2.4

I cannot find anything online that will accomplish this. Does anyone
know the code in VBA that may work?

Thank you

Gene Haines


Peter: Guy in work is a metallurgist and is using this type of rounding
for chemical composition. He had asked me if I knew a way to do this. Of
course I volunteered to help him out.

Thanks for your response

Gene




why not


=MROUND(A1,0.2)

?




All times are GMT +1. The time now is 02:48 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com