Find & Replace Function in VBA
If your excel job involves routine tasks finding something and replacing it with something, then you need this article at any cost. Because after reading this article, you would probably save 80% of your time by learning this VBA coding technique. Find and Replace in ExcelFind And Replace In ExcelFind and Replace is an Excel feature that allows you to search for any text, numerical symbol, or special character not just in the current sheet but in the entire workbook. Ctrl+F is the shortcut for find, and Ctrl+H is the shortcut for find and replace. is an often used tool, and we can implement the same with VBA as well. In our earlier article “VBA Find,” we have shown you how to use the FIND method in VBA. In this article, we will show you how to use the VBA “Find & Replace” method.
Follow the article to learn this technique.
VBA Find and Replace Syntax
To use the Find and Replace method in VBA, we have to follow the below-given steps. First, we have selected the range of cells, so mention the range of cells by using RANGE object in VBAUsing RANGE Object In VBARange is a property in VBA that helps specify a particular cell, a range of cells, a row, a column, or a three-dimensional range. In the context of the Excel worksheet, the VBA range object includes a single cell or multiple cells spread across various rows and columns..
Now put a dot (.) to see the IntelliSense list.
Select the Replace method from the list.
We can see the huge parameter list of the Replace method. Now we will see each parameter explanation below.
- What: This is nothing but what we need to find to replace the value.
- Replacement: With the found value, what should be the new value to be replaced with.
- Look At: This is to mention whether we want to look at the whole content or just the part of the content. We can supply two parameters here “xlWhole” & “xlPart.”
- Search Order: This is to mention the search order, either rows or columns. We can supply two parameters here “xlByRows” & “xlByColumns.”
- Match Case: The content we are searching for is case sensitive or not. If the case sensitive argument is TRUE or else FALSE.
- Search Format: We can also search the content by the formatting of the value we are looking for.
- Replace Format: We can replace the one format with another format as well.
Examples of VBA Find and Replace in Excel
Below are some examples of the Excel VBA Find and Replace method.
Example #1 – VBA Find and Replace the Word
Ok, let’s look at the following example to understand VBA Find and Replace Method. Take a look at the following data.
Step 1: First, mention the Range of cells we are replacing. In this example, Range is from A1 to B15, so the code will be Range (“A1: B15”).
Sub Replace_Example1() Range ("A1:B15") End Sub
Step 2: Now put a dot to see the IntelliSense list.
Step 3: Select the Replace method from the IntelliSense list.
Step 4: Mention What parameter as “September.”
Step 5: Next, Replace with parameter should be our new value we replacing with i.e., “December.”
Range("A1:D4").Replace What:="September", Replacement:="December"
Ok, as of now, ignore all the other parameters. Now run the VBA codeVBA CodeVBA code refers to a set of instructions written by the user in the Visual Basic Applications programming language on a Visual Basic Editor (VBE) to perform a specific task. to see the replacement method with VBA.
So, it has replaced all the September with the word “December.”
Example #2 – Case Sensitive Replacement
The more advanced example of the VBA Find & Replace method will be using case sensitive replacement method. For this example, I have created this sample data, as shown in the below image.
We have two cell data in capital letters, “HELLO.” Where ever we have a capital “HELLO,” it should be replaced by the new word “Hiii.”
As usual, write the code, mention what to find and what to replace first.
Sub Replace_Example2() Range("A1:D4").Replace What:="HELLO", Replacement:="Hiii" End Sub
Now for the next argument, “Match Case,” write the condition as TRUE.
Range("A1:D4").Replace What:="HELLO", Replacement:="Hiii", MatchCase:=True
Now run the code. It will replace only the capital “HELLO” with “Hiii.”
Imagine you have not applied the Match Case argument in VBAMatch Case Argument In VBAIn VBA, the match function is used as a lookup function and is accessed by the application. worksheet method. The arguments for the Match function are similar to the worksheet function., then it will replace all the “Hello” to “Hiii.”
Note: I have removed the Match Case argument here. By default, the MATCH CASE argument value is FALSE.
As we can see in the above image, it has replaced all the “hello” words to “hiii.”
So, whenever we want to use MATCH CASE criteria, we should apply the argument as “TRUE,” and by default, this argument value is “FALSE.” Like this, we can use the “FIND & REPLACE” method to find something and replace the found value with something else.
This has been a guide to VBA Find and Replace Method. Here we will learn how to find and replace the word in VBA Excel with examples and downloadable excel sheets. You may also have a look at other articles related to Excel VBA –