You can use the **CInt** function in VBA to convert a text string to an integer.

Here are two common ways to use this function in practice:

**Method 1: Convert String to Integer in VBA**

Sub ConvertStringToInteger() Dim i As Integer For i = 2 To 11 Range("B" & i) = CInt(Range("A" & i)) Next i End Sub

This particular macro will convert each string in the range **A2:A11** to an integer and display the integers in the range **B2:B11**.

**Method 2: Convert String to Integer in VBA (Only if String is a Number)**

**Sub ConvertStringToInteger()
Dim i As Integer
For i = 2 To 11
If IsNumeric(Range("A" & i)) Then
Range("B" & i) = CInt(Range("A" & i))
Else
Range("B" & i) = 0
End If
Next i
End Sub
**

This particular macro will convert each string in the range **A2:A11** to an integer only if the string is a number. Otherwise, the string will be converted to a value of zero.

The following examples show how to use each method in practice.

**Example 1: Convert String to Integer in VBA**

Suppose we have the following column of values in Excel that are currently formatted as text strings:

Suppose we would like to convert each string to an integer and display the integers in column B.

We can create the following macro to do so:

Sub ConvertStringToInteger() Dim i As Integer For i = 2 To 11 Range("B" & i) = CInt(Range("A" & i)) Next i End Sub

When we run this macro, we receive the following output:

**Example 2: Convert String to Integer in VBA (Only if String is a Number)**

Suppose we have the following column of values in Excel that are currently formatted as text strings:

Suppose we would like to convert each string to an integer *only if the string is a number* and display the integers in column B.

We can create the following macro to do so:

**Sub ConvertStringToInteger()
Dim i As Integer
For i = 2 To 11
If IsNumeric(Range("A" & i)) Then
Range("B" & i) = CInt(Range("A" & i))
Else
Range("B" & i) = 0
End If
Next i
End Sub**

When we run this macro, we receive the following output:

Notice that only the text strings in column A that are numbers are converted to integers in column B.

Otherwise, the text strings are simply converted to a value of zero.

**Note**: You can find the complete documentation for the VBA **Cint **function .

**Additional Resources**

The following tutorials explain how to perform other common tasks in VBA: