View Single Post
  #3   Report Post  
Posted to microsoft.public.excel.misc
Kevin B Kevin B is offline
external usenet poster
 
Posts: 1,316
Default Macro if and / or statement

Try the following code, which sets the active cell as range, captures the
values from the 2 columns to its left and evaluates the 2 values against your
critieria. If there's a match you get the answer of GOOD in the active cell,
otherwise you get absolutely nothing in the cell.:

Sub Good()

Dim val1 As Variant
Dim val2 As Variant
Dim r As Range

Set r = Application.ActiveCell
val1 = r.Offset(, -1).Value
val2 = r.Offset(, -2).Value

If val1 < "VOY" And val2 = "Cambridge" Or _
val2 = "London" Then
r.Value = "Good"
End If

Set r = Nothing

End Sub

--
Kevin Backmann


"orquidea" wrote:

Hi:

I am having difficulty writing a macro with the if and /or together.

Column C will be = "GOOD" if B is different than "VOY" and A is iqual to
London and Cambridge.

A B C
London VOY
Cambridege GOOD
London GOOD

I have the below string but it is just evaluating the second part of the
string
Do (the and conditions)
If ActiveCell.Offset(0, -1) < "VOY" And ActiveCell.Offset(0, -2) = "
London" Or ActiveCell.Offset(0, -2) = "Cambridge" Then
ActiveCell.Value = "GOOD"
ActiveCell.Offset(1, 0).Select
Else
ActiveCell.Offset(1, 0).Select
End If
Loop Until ActiveCell.Offset(0, -13) = ""

Could anyone help me please.

Thanks,
Orquidea