How to Use VBA CStr Function Efficiently in 3 Minutes (Excel)

Written by Kasper Langmann

The VBA CStr function is a powerful tool in Excel that can convert a value to a string. It’s a versatile function that can help you manipulate and manage data more efficiently. In this guide, we’ll explore how to use the VBA CStr function effectively in just three minutes.

Understanding the VBA CStr Function

The VBA CStr function is part of Visual Basic for Applications (VBA), a programming language used by Microsoft Office applications. The CStr function specifically converts a value to a string. This can be particularly useful when dealing with numerical data that needs to be displayed or manipulated as text.

Before diving into how to use the function, it’s important to understand its syntax. The CStr function has one argument: the value you want to convert to a string. The syntax is as follows: CStr(Expression), where ‘Expression’ is the value you want to convert.

When to Use the VBA CStr Function

The VBA CStr function can be used in a variety of scenarios. One common use is when you need to concatenate, or join together, a number and a string. Excel treats numbers and strings differently, so trying to concatenate them without converting the number to a string can lead to errors.

Another scenario where the CStr function can be useful is when you need to perform operations on numbers that are stored as text. By converting the text to a number, you can perform calculations or other operations that wouldn’t be possible with the number stored as text.

How to Use the VBA CStr Function

Step 1: Open VBA Editor

To start using the VBA CStr function, you first need to open the VBA Editor. In Excel, you can do this by pressing Alt + F11. This will open the VBA Editor window, where you can write and run your VBA code.

Once the VBA Editor is open, you can start writing your code. To use the CStr function, you’ll need to write a VBA procedure, which is a set of instructions that Excel can execute.

Step 2: Write a VBA Procedure

A VBA procedure starts with the keyword ‘Sub’ followed by the name of the procedure. For example, you might name your procedure ‘ConvertToText’. After the name, you’ll write your instructions inside the procedure.

To use the CStr function, you’ll write ‘CStr’ followed by the value you want to convert in parentheses. For example, if you want to convert the number 123 to a string, you would write ‘CStr(123)’.

Step 3: Run the VBA Procedure

Once you’ve written your VBA procedure, you can run it by pressing F5 or by selecting ‘Run’ from the ‘Run’ menu. This will execute the instructions in your procedure, converting the specified value to a string.

If your procedure runs successfully, you’ll see the converted value in the location you specified in your procedure. If there are any errors in your procedure, the VBA Editor will display an error message.

Common Errors and How to Avoid Them

While the VBA CStr function is relatively straightforward to use, there are a few common errors that can occur. One of the most common errors is a ‘Type Mismatch’ error. This occurs when you try to convert a value that can’t be converted to a string, such as an object or an array.

To avoid this error, make sure that the value you’re trying to convert is a single value, not an array or an object. If you’re unsure whether a value can be converted, you can use the VBA ‘Is’ function to check the data type of the value before attempting to convert it.

Another common error is a ‘Runtime Error 13’. This occurs when you try to perform an operation on a string that can only be performed on a number, such as a mathematical operation. To avoid this error, make sure to convert your strings back to numbers before performing any numerical operations.


The VBA CStr function is a powerful tool that can help you manipulate and manage your data more effectively in Excel. By understanding its syntax and when to use it, you can avoid common errors and use the function to its full potential. Whether you’re concatenating numbers and strings, performing operations on numbers stored as text, or simply converting values to strings, the CStr function can make your work in Excel more efficient and error-free.