Name

Round Function

Class

System.Math

Syntax

Math.Round( value[,digits])
value (required; Numeric expression)

Any numeric expression

digits (optional; Integer)

The number of places to include after the decimal point

Return Value

The same data type as value

Description

Rounds a given number to a specified number of decimal places

Rules at a Glance

  • digits can be any whole number between 0 and 16.

  • Round follows standard rules for rounding. If the digit in the position to the right of digits is 5 or greater, the digit in the digits position is incremented by one; otherwise, the digits to the right of digits are dropped.

  • This is a Shared member, so it can be used without creating any objects.

Programming Tips and Gotchas

  • Round with digits set to 2 is the equivalent of Format (expression, "#. ##").

  • If value is a string representation of a numeric value, Round will convert it to a numeric value before rounding. However, if expression is not a string representation of a number, Round generates runtime error 13, “Type mismatch.” The IsNumeric function can be used to ensure that expression is a proper numeric representation before calling Round.

  • If value contains fewer decimal places than digits, Round does not pad the return value with trailing zeroes.

VB.NET/VB 6 Differences

The named parameters of the Round function differ in VB 6 and in the .NET Framework. In VB 6, the named arguments are number and numdigitsafterdecimal. In VB.NET, they’re value and digits.

Get VB.NET Language in a Nutshell, Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.