View Single Post
  #11   Report Post  
Posted to microsoft.public.excel.programming
Rick Rothstein \(MVP - VB\)[_1558_] Rick Rothstein \(MVP - VB\)[_1558_] is offline
external usenet poster
 
Posts: 1
Default Working with Cell Comments - VBA

Sorry, I forgot to account for the fact that there might not be a comment in
the cell. Try it this way...

Sub Test()
Dim OldComment As String
With Worksheets("Sheet1").Range("D5")
If Not .Comment Is Nothing Then
OldComment = .Comment.Text
.Comment.Delete
End If
If Len(OldComment) 0 Then OldComment = OldComment & vbLf
.AddComment OldComment & "I'm on my own line."
End With
End Sub

Rick


"Mr B" wrote in message
...
Well that helps but I'm stuck somewhere.

When I put the: "OldComment = .Comment.Text" in before my .addComment
line, I get an error that says Object Variable not set.

If I put it after the .Addcomment line, then it works just fine.

What I need to do is say If a cell already has a comment, take that
comment
and add in the new informatino to the comment. But if it doesn't have a
comment then just add the new information.

I tried to do this:

OldComment = .Comment.Text
If OldComment < Null Then OldComment = OldComment & vbNewLine
.AddComment OldComment & "New Information"

It bails out right at the Oldcomment=.comment.text line.

Do I have to initialize the cell somehow if it doesn't have a comment
maybe?
Not sure what to do.

Thanks!


"Rick Rothstein (MVP - VB)" wrote:

This code snippet will show you how to handle questions #1 and #3 (I'm
not
sure how to do #2)....

Sub Test()
Dim OldComment As String
With Worksheets("Sheet1").Range("C5")
OldComment = .Comment.Text
.Comment.Delete
.AddComment OldComment & vbNewLine & "I'm on the next line."
End With
End Sub

Rick


"Mr B" wrote in message
...
Thanks to peoplehere, I have a script that's working great for me but
it
involves settings comments for cells. I want to to some more advanced
things
with the Comments box but don't know how.

1) How can I add a Line Return in the comments box when adding text to
the
box in the VBA script? I tried using vbCr and vbCrLn which work but it
puts
a square symbol in the comments instead of just a lien return. I'm
assuming
there's some other coed I should use?

2) Is there a way to set the size of the comments box so it's only big
enough ti display whatever text is actually in there? Each cell will
have
different amounts of text and I don't want tons of blank space if
there's
just one line of text and don't want it cut off if there's 5 lines...

3) Can I concatenate comments if comments already exist?