View Single Post
  #1   Report Post  
Posted to microsoft.public.excel.programming
Bob Phillips[_6_] Bob Phillips[_6_] is offline
external usenet poster
 
Posts: 11,272
Default With and End With issue

Pat,

You seem to have lost the flow on the If IsNumeric test, rather than Else
it, you end it. From the code, it looks as though it should read like this
to me

For Each Target In rng1
sProd = Target.Parent.Cells(Target.Row, 26)
res = Application.Match(sProd, _
Worksheets("PList").Range("L30:L950"), 0)
If Not IsError(res) Then
With Worksheets("PList")
If IsNumeric(Target.Value) Then
Set rng2 = .Cells(res + 29, icol)
rng2.Value = rng2.Value - Target.Value
Else
MsgBox "Product Not found: " & sProd
End If
End With
Else
MsgBox Target.Address & " Caused an Error"
Resume Next
On Error Resume Next
End If
Next

--

HTH

RP
(remove nothere from the email address if mailing direct)


"Pat" wrote in message
...
The following portion of code has got the wrong amount of 'End If', 'End
With' etc, is it possible someone can see the fault with this?

Thanking you
Pat

For Each Target In rng1
sProd = Target.Parent.Cells(Target.Row, 26)

res = Application.Match(sProd, _
Worksheets("PList").Range("L30:L950"), 0)
If Not IsError(res) Then
With Worksheets("PList")

If IsNumeric(Target.Value) Then
Set rng2 = .Cells(res + 29, icol)
rng2.Value = rng2.Value - Target.Value
End If
End With
Else
MsgBox "Product Not found: " & sProd

End If

End With
Else
MsgBox Target.Address & " Caused an Error"
Resume Next
On Error Resume Next
End If
Next