What Data Type Is Decimal in VBA?


Scott Campbell

What Data Type Is Decimal in VBA?

When working with numbers in VBA (Visual Basic for Applications), it is important to understand the various data types available. One of the commonly used data types for handling decimal numbers is the Decimal data type.

What is the Decimal Data Type?

The Decimal data type in VBA is used to represent decimal numbers with high precision. It allows for more accurate calculations compared to other numeric data types such as Double or Single. The Decimal data type can store numbers with up to 28 decimal places.

Declaring a Variable as Decimal

To declare a variable as Decimal in VBA, you can use the following syntax:

Dim variableName As Decimal

This declares a variable named variableName of type Decimal.

Assigning Values to a Decimal Variable

You can assign values to a Decimal variable using the assignment operator (=). For example:

variableName = 3.14159

In this example, the value of 3.14159 is assigned to the variableName.

Mathematical Operations with Decimal Variables

The Decimal data type supports various mathematical operations, including addition, subtraction, multiplication, and division. Here’s an example demonstrating some arithmetic operations:

Dim x As Decimal
Dim y As Decimal

x = 5.25
y = 2.75

' Addition
Dim sum As Decimal
sum = x + y

' Subtraction
Dim difference As Decimal
difference = x - y

' Multiplication
Dim product As Decimal
product = x * y

' Division
Dim quotient As Decimal
quotient = x / y

In the above example, the variables x and y are declared as Decimal and assigned values. Then, various mathematical operations are performed using these variables, and the results are stored in separate Decimal variables.

Advantages of Using Decimal Data Type

The Decimal data type offers several advantages:

  • Precision: The Decimal data type allows for precise calculations with decimal numbers.
  • Control over rounding: You can control how decimal numbers are rounded using functions such as CDec(), CInt(), or CStr().
  • Avoiding floating-point errors: Unlike Double or Single data types, which use binary representation for decimals, the Decimal data type uses a decimal representation. This helps in avoiding floating-point errors.


The Decimal data type in VBA is a powerful tool for handling decimal numbers with high precision. It offers more accuracy compared to other numeric data types and allows for precise calculations. By using the Decimal data type, you can avoid common issues related to floating-point errors and achieve more accurate results in your VBA programs.

Discord Server - Web Server - Private Server - DNS Server - Object-Oriented Programming - Scripting - Data Types - Data Structures

Privacy Policy