“Not Equal” Operator in VBA
Usually, we do a logical test “whether something is equal to other thing or not”. In some cases, we need to do the “inequality” test as well. Inequality test is nothing but not equal test. Generally, we say if something is equal to other thing or not, if it is equal performs some kind of task if not different task. Similarly using Inequality test also we can do some kind of operation. “NOT EQUAL” in VBA is represented by the combination of greater than and less than symbols. If both these operators combined then it becomes not equal symbol i.e. “<>”.
How Not Equal to Works in Excel VBA?
VBA Not equal works exactly opposite to the logic of equal to operator. Equal to operator returns TRUE if the supplied test is satisfied is not it will return FALSE. For example, if you say 10 = 10 it will return TRUE or else FALSE.
On the other side “Not Equal” works in the opposite direction, if the supplied logical test is not equal then only it will return TRUE or else FALSE.
For example, if you say 10 <> 10 it will return FALSE because 10 is equal to 10. In order to get the TRUE result one value should not be equal to the other value.
Examples of Not Equal to in Excel VBA
Below are the examples of not equal to operator in Excel VBA.
Now we will see how to use VBA Not Equal (<>) sign practically. Look at the below piece of code.
Sub NotEqual_Example1() Dim k As String k = 100 <> 100 MsgBox k End Sub
Here we are testing whether the number 100 is not equal to the number 100. For sure we know number 100 is equal to 100, so the result will be FALSE.
Now I will change the equation.
Sub NotEqual_Example1() Dim k As String k = 100 <> 99 MsgBox k End Sub
Now the test is whether number 100 is not equal to 99. So the result will be TRUE.
Now we will see how to use this not equal operator in real time examples. For the demonstration, I have created some data.
We have two values, “Value 1” and “Value 2”.
Now my requirement is if the Value 1 is not equal to Value 2 then I need the result as “Different” or else I need the result as “Same”.
Step 1: Define a variable as an Integer.
Sub NotEqual_Example2() Dim k As Integer End Sub
Step 2: Open FOR NEXT LOOP from 2 to 9.
Sub NotEqual_Example2() Dim k As Integer For k = 2 To 9 Next k End Sub
Step 3: Inside the loop, we need to test whether value 1 is not equal to value 2. Since we need our own results we need to use IF Condition.
Sub NotEqual_Example2() Dim k As Integer For k = 2 To 9 If Cells(k, 1) <> Cells(k, 2) Then Cells(k, 3).Value = "Different" Else Cells(k, 3).Value = "Same" End If Next k End Sub
If condition tests whether the value 1 is not equal to value 2 or not. If not equal it will return “Different”, if equal it will return “Same”.
You can copy and paste the below VBA code.
Copy this code to your module and run using F5 key or manually. This will return a result like this.
Hide and Unhide Sheets with Not Equal Sign
The various ways of using not equal sing are enormous. We can use this sign to fulfill our needs.
#1 – Hide All Sheets except One Sheet
We have seen this kind of situations many times. We needed to hide all the sheets except the particular sheet.
For example, if you want to hide all sheets except the sheet name “Customer Data” then you can use this code.
Sub Hide_All() Dim Ws As Worksheet For Each Ws In ActiveWorkbook.Worksheets If Ws.Name <> "Customer Data" Then Ws.Visible = xlSheetVeryHidden End If Next Ws End Sub
#2 – Unhide All Sheets except One Sheet
Similarly, we can also unhide all sheets except the one sheet. Use below code to do this.
Sub Unhide_All() Dim Ws As Worksheet For Each Ws In ActiveWorkbook.Worksheets If Ws.Name <> "Customer Data" Then Ws.Visible = xlSheetVisible End If Next Ws End Sub
You can download this VBA Not Equal to Excel template here – VBA Not Equal Operator Template
This has been a guide to VBA Not Equal. Here we look at how to use the Logical Operator “Not Equal to” in VBA along with practical examples and downloadable excel sheets. Below are some useful VBA articles related –