vba If condition help..

Mallesh23

Well-known Member
Joined
Feb 4, 2009
Messages
976
Office Version
  1. 2010
Platform
  1. Windows
Hi Team,


Is there a way to shorten this code used in if condition.
If Sheet1.Cells(i, 1).Value = "Green" Or Sheet1.Cells(i, 1).Value = "Red" Or Sheet1.Cells(i, 1).Value = "Blue" Then

like If Sheet1.Cells(i, 1).Value = Array("Green", "Red", "Blue") Then


Thanks in advance



Regards,
mg
 

Excel Facts

How to show all formulas in Excel?
Press Ctrl+` to show all formulas. Press it again to toggle back to numbers. The grave accent is often under the tilde on US keyboards.
There are many ways and the best one will depend on your individual circumstances (including for example whether the case of the text has to match exactly) & your preference but here are 3 ways to consider

Rich (BB code):
If IsNumeric(Application.Match(Sheet1.Cells(i, 1).Value, Array("Green", "Red", "Blue"), 0)) Then
  MsgBox "Yes"
Else
  MsgBox "No"
End If


If InStr(1, "|Green|Red|Blue|", "|" & Sheet1.Cells(i, 1).Value & "|", 1) > 0 Then
 MsgBox "Yes"
Else
  MsgBox "No"
End If


Select Case LCase(Sheet1.Cells(i, 1).Value)
  Case "green", "red", "blue"
    MsgBox "Yes"
  Case Else
    MsgBox "No"
End Select
 
Last edited:
Upvote 0
Hi
what about
Code:
If Sheet1.Cells(1, 1).Value = Green Or Red Or Blue Then
 
Upvote 0
Nop
It works OK
:huh: Really?? I think you should check again.

Here's my test of your code line
Rich (BB code):
Sub Test()
  Dim i As Long
  
  For i = 1 To 3
    If Sheet1.Cells(i, 1).Value = Green Or Red Or Blue Then
      Sheet1.Cells(i, 2).Value = "Green or Red or Blue"
    Else
      Sheet1.Cells(i, 2).Value = "XXX"
    End If
  Next i
End Sub

Here is the result

Excel Workbook
AB
1GreenXXX
2OrangeXXX
3RedXXX
Sheet1
 
Upvote 0
Hi Peter,
Thank you so much for giving multiple option, I will practice on it and improve my coding. :beerchug:


Regards,
mg
 
Upvote 0
Ooops
I must have tested in a wrong way
Terribly sorry
And thank you Mr. peter for letting me know my fault
 
Upvote 0

Forum statistics

Threads
1,223,275
Messages
6,171,126
Members
452,381
Latest member
Nova88

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top