View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Don Guillett Don Guillett is offline
external usenet poster
 
Posts: 10,124
Default Worksheet Change event problem


try
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo ws_exit:
Application.EnableEvents = False
If Not Intersect(Target, Me.Range("K12:K160")) Is Nothing Then

' With Target
'For n = 12 To 160
'If Cells(n, 13) = "Grass" Then

n=target.row
if ucase(target)="GRASS" then
Cells(n, 14).Value = "No N"
Else
Cells(n, 14) = ""
End If

' Next n
' End With
End If
ws_exit:
Application.EnableEvents = True
End Sub


--
Don Guillett
SalesAid Software

"Graham Haughs" wrote in message
...
Please excuse the crudity off the change procedure below but it is "just
about" doing what I want it to do but I just cannot get that extra input
need to make it work. At the moment it will enter "No N" in column 14 when
I change a value in the relevant area in column K The trouble is that It
will enter "No N" anywhere in the column providing there is "Grass" in
column 13. What I want is the value to change only in the same row on
which the change is made in column K and the other rows to stay unchanged
unless another change is made in K on the relevant row. I value any help.

Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo ws_exit:
Application.EnableEvents = False
If Not Intersect(Target, Me.Range("K12:K160")) Is Nothing Then
With Target
For n = 12 To 160
If Cells(n, 13) = "Grass" Then
Cells(n, 14).Value = "No N"
Else: Cells(n, 14) = ""
End If
Next n
End With
End If
ws_exit:
Application.EnableEvents = True
End Sub

Kind regards
Graham Haughs
Turriff
Scotland