View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Jacob Skaria Jacob Skaria is offline
external usenet poster
 
Posts: 8,520
Default adding/appending comment by code

You need to store the comment to a variable and delete and set the comment
again.

'date is entered
On Error Resume Next
If Not Intersect(Target, Me.Range("J5:J30")) Is Nothing Then
With Target
If .Value < "" Then
Application.EnableEvents = False
If Target.Offset(0, 1).Comment Is Nothing Then
Target.Offset(0, 1).AddComment.Text Text:="Due date: " &
Target.Value + 14
Else
strTemp = Target.Offset(0, 1).Comment.Text
Target.Offset(0, 1).ClearComments
Target.Offset(0, 1).AddComment.Text Text:=strTemp & " Due date: " &
Target.Value + 14
End If

On Error GoTo 0
Application.EnableEvents = True
End If
End With
End If



--
If this post helps click Yes
---------------
Jacob Skaria


"Jock" wrote:

Hi,
The following code should:
1) add a comment with text & date when a date is entered in a cell in 'I'
2) append the above comment with new text and date when a date is entered in
'J'

The first part works fine, but the second doesn't and I can't figure out why!

Private Sub Worksheet_Change(ByVal Target As Range)

'adds a comment box to cells in column K (if an "Certificate of Service"
date is entered
On Error Resume Next
If Not Intersect(Target, Me.Range("I6:I30")) Is Nothing Then
With Target
If .Value < "" Then
Application.EnableEvents = False
Target.Offset(0, 2).AddComment.Text Text:="AoS due date: " &
Target.Value + 14
On Error GoTo 0
Application.EnableEvents = True
End If
End With
End If

'appends the comment box in cells in column K if a "Particulars of Claim"
date is entered
On Error Resume Next
If Not Intersect(Target, Me.Range("J5:J30")) Is Nothing Then
With Target
If .Value < "" Then
Application.EnableEvents = False
Target.Offset(0, 1).EditComment.Text Text:="Due date: " &
Target.Value + 14
On Error GoTo 0
Application.EnableEvents = True
End If
End With
End If
End Sub


Any ideas?
Thanks
--
Traa Dy Liooar

Jock