Saturday, August 13, 2016

How to use the CASE Statement (VBA)

Description

The Microsoft Excel CASE statement has the functionality of an IF-THEN-ELSE statement.

Syntax

The syntax for the CASE statement in Microsoft Excel is:
Select Case test_expression

Case condition_1
result_1

Case condition_2
result_2

...

Case condition_n
result_n

Case Else
result_else

End Select

Parameters or Arguments

test_expression
A string or numeric value. It is the value that you are comparing to the list of conditions. (ie: condition_1, condition_2, ... condition_n)
condition_1, ... condition_n
Conditions that are evaluated in the order listed. Once a condition is found to be true, it will execute the corresponding code and not evaluate the conditions any further.
result_1, ... result_n
The code that is executed once a condition is found to be true.

Note

  • If no condition is met, then the Else portion of the CASE statement will be executed.
  • The Else portion is optional.

Applies To

  • Excel 2016, Excel 2013, Excel 2011 for Mac, Excel 2010, Excel 2007, Excel 2003, Excel XP, Excel 2000

Type of Function

  • VBA statement (VBA)

Example (as VBA Function)

The CASE statement can only be used in VBA code in Microsoft Excel.
Let's look at some Excel CASE statement function examples and explore how to use the CASE statement in Excel VBA code:
Select Case LRegion
Case "N"
LRegionName = "North"
Case "S"
LRegionName = "South"
Case "E"
LRegionName = "East"
Case "W"
LRegionName = "West"
End Select
With the Excel CASE statement, you can also use the To keyword to specify a range of values. For example:
Select Case LNumber
Case 1 To 10
LRegionName = "North"
Case 11 To 20
LRegionName = "South"
Case 21 To 30
LRegionName = "East"
Case Else
LRegionName = "West"
End Select
With the Excel CASE statement, you can also comma delimit values. For example:
Select Case LNumber
Case 1, 2
LRegionName = "North"
Case 3, 4, 5
LRegionName = "South"
Case 6
LRegionName = "East"
Case 7, 11
LRegionName = "West"
End Select
And finally, with the Excel CASE statement, you can also use the Is keyword to compare values. For example:
Select Case LNumber
Case Is < 100
LRegionName = "North"
Case Is < 200
LRegionName = "South"
Case Is < 300
LRegionName = "East"
Case Else
LRegionName = "West"
End Select

No comments:

Post a Comment