WorksheetFunction.Round using user-selectable rounding value?
I don't think that you and Bob are talking about the same thing. When you
say "sample figure", is sounds like you are talking about
Sheets("Output").Cells(45,
2).Value, where Bob appears to be talking about your variable named
RoundingValue.
The worksheet function ROUND() takes two arguments, number and num_digits.
Whenever ABS(number)<(10^-TRUNC(num_digits))/2, then then the result will be
zero, since number is closer to 0 than the smallest possible non-zero rounded
value. When num_digits<0, then that break point is 1, which may have snuck
up on you.
Jerry
"Punsterr" wrote:
Bob,
Nice catch! The sample figure I was testing it on just happened to be a
negative number. The macro does work for positive numbers. However,
I'm still not sure I'm following why the 0 value would come up for a
negative number. If I was just doing that same rounding function in an
Excel formula, it would round the negative number to the nearest
hundred/thousand/million. Any thoughts on what I need to change in my
macro to round both positive and negative numbers in the same
programming loop? (The Output sheet will have 15+ values that will be
rounded, some of which will be positive and some of which will be
negative.)
|