Open In App

How to use If-Else-If Statement in Excel VBA?

Last Updated: 19 Nov, 2021
Summarize
Comments
Improve
Suggest changes
Like Article
Like
Share
Report
News Follow

In this article, we are going to look into how to use the  If Else If statement in Excel VBA using a suitable example.

Implementation :

In the Microsoft Excel tabs, select the Developer Tab. Initially, the Developer Tab may not be available. 

The Developer Tab can be enabled easily by a two-step process :

  • Right-click on any of the existing tabs at the top of the Excel window.
  • Now select Customize the Ribbon from the pop-down menu.

  • In the Excel Options Box, check the box Developer to enable it and click on OK.

  • Now, the Developer Tab is visible.

Now click on the Visual Basic option in the Developer tab and make a new module to write the program using the Select Case statement.

Developer  -> Visual Basic -> Tools -> Macros
  • Now create a Macro and give any suitable name.

  • This will open the Editor window where can write the code.

IF ELSE IF statement 

The syntax is :

If condition1/expression1 Then
Code Block 1
Else If condition2/expression2 Then
   Code Block 2
Else 
    Code Block 3
End If

In this initially, the If condition is executed and if it is TRUE then the code block 1 will execute and the program terminates. Now, if condition 1 becomes FALSE then condition 2 inside Else IF will work, and if it is TRUE code block 2 will execute and the program terminates. If both the previous conditions are false then Else will work and Code Block 3 will be executed.

Flow Diagram :

Example :  Suppose in a company we need to find the maximum salary of three departments : HR, Finance and IT.

Code :

Sub Find_Max()
'Declaring the variables
Dim HR_Sal As Integer
Dim Fin_Sal As Integer
Dim IT_Sal As Integer
'Asking the users to enter the salary
HR_Sal = InputBox("Enter HR department salary:")
Fin_Sal = InputBox("Enter Finance department salary:")
IT_Sal = InputBox("Enter IT department salary:")
'Conditions to find the maximum salary of three departments
If HR_Sal > Fin_Sal And HR_Sal > IT_Sal Then
    MsgBox "HR department has maximum salary"
'The previous condition fails then the below statement executes
ElseIf Fin_Sal > IT_Sal Then
    MsgBox "Finance department has maximum salary"
'The previous two conditions fail then the below statement executes
Else
    MsgBox "IT department has maximum salary"
End If
End Sub

Here, first we check if HR Salary is more than that of the other two departments. If it is TRUE then definitely the HR department has maximum salary and the code inside IF executes. If this is not TRUE, it means HR department salary is not maximum and next in Else If condition we need to compare between IT and Finance and see which is maximum. In this way If Else If executes. If none of the previous conditions are TRUE, then the code inside Else will be executed. 

AND is a logical operator which gives the result as TRUE value if and only if both the expressions associated with this operator are TRUE.

Case 1 :

Inputs by the user are :

The output is :

Case 2 :

Inputs by the user are :

The output is :

Case 3 :

Inputs by the user are :

The output is :



News
Improve
Discuss
Do you want to advertise with us?Click here to know more

How to use If-Else Statement in Excel VBA?

article_img
VBA in Excel stands for Visual Basic for Applications which is Microsoft's programming language. To optimize the performance and reduce the time in Excel we need Macros and VBA is the tool used in the backend. In this article, we are going to learn how to use the If Else statement in Excel VBA. Implementation : In the Microsoft Excel tabs, select the Developer Tab. Initially, the Developer Tab may not be available. The Developer Tab can be enabled easily by a two-step process : Right-click on any of the existing tabs at the top of the Excel window.Now select Customize the Ribbon from the pop-down menu.In the Excel Options Box, check the box Developer to enable it and click on OK. Now, the Developer Tab is visible. Now click on the Visual Basic option in the Developer tab and make a new module to write the program using the Select Case statement. Developer -> Visual Basic -> Tools -> MacrosNow create a Macro and give any suitable name. This will open the Editor window where can write the code. IF Statement : The syntax for the If-Else statement in Excel is : If condition/expression Then Code Block for True Else Code Block for False End If Flow Diagram : Example: Suppose a
Read More

VBA Subroutine in Excel - How to Call Sub in VBA?

article_img
When a specified action is performed on a worksheet with the help of a collection of code known as a VBA Subroutine. It also helps to read an external file, also it can open other applications from Excel. A large piece of code can be broken into small parts so that we can manage it easily. Let's learn why to use submarines: Converts large piece of codes into small parts so that the computer ignores all kind of complexities that arises because of large codesReusability of code suppose we in a program have to access the database frequently so instead of writing the code again and again we can create a function to access the databaseSubroutines are self-documenting functions which means a coder can easily say what the program does by looking into the name of the function Naming Rules of SubroutinesIt can start with a letter or an underscore but it cannot start with a number or a special character.It cannot contain any space in the name.The name of the subroutine cannot be a keyword like Private, Sub, End, etc. Syntax Private Sub function_name( ByVal arg1 As String, ByVal arg2 As String) End Sub Syntax Explanation Code Action "Private Sub function_name(...)"Private is the keyword whic
Read More

How to Use Select Case Statement in Excel VBA?

article_img
VBA in Excel stands for Visual Basic for Applications which is Microsoft's programming language. To optimize the performance and reduce the time in Excel we need Macros and VBA is the tool used in the backend. In this article, we are going to discuss how to use Select Case Statement in Excel VBA. Select Case Statement of Excel VBA The select case in VBA is like a detective that investigates an expression by checking it against different scenarios listed as Case Statements, each with its own conditions. When a scenario matches the expression, it's like solving a piece of the puzzle, and the corresponding code linked to that scenario is activated. Importantly, once a match is found, the detective stops investigating and moves on to executing the discovered code. Yet, if none of the scenarios match, it's like the detective hitting a dead end. In this situation, the code associated with the Case Else statement comes into play, offering a default solution or outcome. Syntax of the Select Case Statement of Excel VBAThe VBA Select Case Statement shares similarities with the Switch Case construct found in programming languages such as Java, C#, and PHP. In Excel VBA, this statement helps
Read More

VBA Print Statement in Excel

article_img
When there are many columns and rows in excel but we only want to save or print a few of them because that few rows and columns are important to us, at that case we will print them in Excel VBA so that we can fetch those details later and also to get the print out of that table because daily life hard copy of the reports is usually required in the meetings. Syntax: [From]: Starting page of the printout.[TO]: Ending page of the printout.[Copies]: Number of copies of the printout.[Preview]: Before it gets printed if we want to view it then we can mention TRUE otherwise FALSE.PrintOut Method Without its Parameters Suppose, we have data as shown in the following Now, we want to print the report from range A1 to B9. For that, we will mention the range with the PrintOut method. Printout Method With its Parameters Now, we will print two copies of data which will first be shown to us for that we have to assign TRUE to preview the parameter. Parameters of Printout Method Code to print the complete sheet. Code to print the complete sheet with its sheet name. Code to print all the sheets in the workbook. Code to print all the data in the workbook. Code to print the data which are selecte
Read More

A

How to Use for Each Loop in Excel VBA?

A For Each loop is used to execute a statement or a set of statements for each element in an array or collection. Syntax: For Each element In group [ statements ] [ Exit For ] [ statements ] Next [ element ] The For...Each...Next statement syntax has the following three parts: PartDescriptionelement Required (Must be mentioned). Variable is used to iterate through the elements of the collection or array. For collections, the element can only be a Variant variable, a generic object variable, or any specific object variable. For arrays, the element can only be a Variant variable.groupRequired(Must be mentioned). Name of an object collection or array (except an array of user-defined types).statementOptional (May or may not be mentioned). One or more statements are executed on each item in the group. There are 4 basic steps to writing a For Each Next Loop in VBA: Declare a variable.Write the For Each Line with the variable and collection references.Add line(s) of code to repeat for each item in the collection.Write the Next line to terminate the loop. The For…Each block is entered if there is at least one element in the group. Upon entering the loop,
Read More

A

How to Use Do While Loop in Excel VBA?

article_img
A Do…While loop is used when we want to repeat certain set of statements as long as the condition is true. The condition may be checked at the starting or at the end of the loop Flowchart: Uses of Do-While loop: The Do While loop is used in two ways: Do…while loop which checks the condition at the STARTING of the loop.Do…while loop which checks the condition at the END of the loop. Syntax 1: Do While condition [statements] [Exit Do] [statements] Loop Syntax 2: Do While [statements] [Exit Do] [statements] Loop conditionImplementing a Do While loop: Follow the below steps to implement a Do-While loop: Step 1: Define a Macro Private Sub Demo_Loop() End Sub Step 2: Define variables j=2 i=1 Step 3: Write Do While Loop. You can write condition at the beginning or at the end Do While i < 5 Step 4: Write statements to be executed in loop msgbox "Table of 2 is : " & (j*i) i=i+1 Step 5: End loop. Now let's take a look at some of the examples. Example 1: Do…while loop which checks the condition at the STARTING of the loop. The below example uses Do…while loop to check the condition at the starting of the loop. The statements inside the loop are executed, only if the condition is True
Read More

How to Use For Next Loop in Excel VBA?

article_img
If you are familiar with the programming you must have an idea of what a loop is, In computer programming, a loop is a sequence of statements that are repeated until a specific condition is satisfied. In Excel VBA the "For Next" loop is used to go through a block of code a specific number of times. Syntax: For counter = start to end [step count] [code block to execute] statement 1 statement 2 statement 3 . . statement n Next [counter] Here we can use the counter or any other variable to run them as many times as we need. Example: When you are displaying numbers from 1 to 10 you may want to set the value of a variable to 1 and display it 10 times, increasing its value by 1 on each loop iteration. The same logic is used in VBA. We specify how many times we have to run the loop, and then specify what code should our loop execute each time the loop runs. A loop has 3 parts the first one is an initialization, the second is the condition under which the loop runs, and the last is increment or decrement. The flow of the control in for loop:The For step is executed first. This step allows you to initialize any loop control variables and increment the step counter variable.Then the second
Read More

How to Use the VBA Immediate Window in Excel?

article_img
The immediate window is similar to the console in Chrome, where we could execute the javascript. The immediate window allows us to execute macro code very fast and efficiently. Once, you learned it, you will always be found using it. Your immediate window can answer an infinite number of questions, like setting a cell value, changing the sheet of the name, counting the number of sheets, finding the active cell of the current worksheet, etc. In this article, we will learn different ways to use the immediate Windows in excel. Opening Immediate Window By default, the immediate window does not appear in the visual basic editor, but, could be activated by following these steps: Step 1: Go to the developer tab, under the Code section. Click on Visual Basic(Alt + F11). Step 2: VBA editor is opened. Click on View, in the menu bar. Select Immediate Window. Step 3: The Immediate window(Ctrl + G), is opened in the VBA editor. Different Ways to Use Immediate Window There can be a huge number of cases where you could use immediate windows which can make your work faster and easy. An immediate window can run a macro, set variable values, debug, ask different questions using (?), and ma
Read More

How to use While Wend Loop in Excel VBA?

article_img
In this article, we are going to see about While Wend loop in Excel VBA using a suitable example. Implementation : In the Microsoft Excel tabs, select the Developer Tab. Initially, the Developer Tab may not be available. The Developer Tab can be enabled easily by a two-step process : Right-click on any of the existing tabs in the top of the Excel window.Now select Customize the Ribbon from the pop-down menu.In the Excel Options Box, check the box Developer to enable it and click on OK. Now, the Developer Tab is visible. Now click on the Visual Basic option in the Developer tab and make a new module to write the program using the Select Case statement. Developer -> Visual Basic -> Tools -> MacrosNow create a Macro and give any suitable name. This will open the Editor window where can write the code. While Wend Loop In a while loop all the statements will execute inside the loop until the provided condition becomes FALSE. The loop terminates only when the condition becomes FALSE. In Excel the keyword While is used to start the while loop and Wend is used to end the while loop. 1. The statements inside the while loop execute when the condition is TRUE. 2. When the condition
Read More

How to use Do Until Loop in Excel VBA?

article_img
In this article, we are going to see look into the Do Until loop in Excel VBA using a suitable example. Implementation : In the Microsoft Excel tabs, select the Developer Tab. Initially, the Developer Tab may not be available. The Developer Tab can be enabled easily by a two-step process : Right-click on any of the existing tabs in the top of the Excel window.Now select Customize the Ribbon from the pop-down menu. In the Excel Options Box, check the box Developer to enable it and click on OK. Now, the Developer Tab is visible. Now click on the Visual Basic option in the Developer tab and make a new module to write the program using the Select Case statement. Developer -> Visual Basic -> Tools -> MacrosNow create a Macro and give any suitable name. This will open the Editor window where can write the code. Do Until Loop In Do Until loop the condition is checked. The statements inside the loop are executed when the condition becomes FALSE. When the condition becomes TRUE, the loop terminates. In the case of a Do Until we can write the condition either in the beginning or at the end. There are two possible syntaxes in the case of Do Until Loop. The keyword Do is used to perf
Read More
three90RightbarBannerImg