MORE INFORMATION
Microsoft provides programming examples for illustration only, without warranty either
expressed or implied, including, but not limited to, the implied warranties of
merchantability and/or fitness for a particular purpose. This article assumes
that you are familiar with the programming language being demonstrated and the
tools used to create and debug procedures. Microsoft support professionals can
help explain the functionality of a particular procedure, but they will not
modify these examples to provide added functionality or construct procedures to
meet your specific needs. If you have limited programming experience, you may
want to contact a Microsoft Certified Partner or the Microsoft fee-based
consulting line at (800) 936-5200. For more information about Microsoft Certified
Partners, please visit the following Microsoft Web site:
For more information about the support options that are available and about how to contact Microsoft, visit the following Microsoft Web site:
Working Around the 255-Character Limitation of the NoteText Method
Although the
NoteText method of a cell is limited to a maximum of 255 characters, you can apply a comment that is up to 32,767 characters in
length to a cell. To do this, use the
Text method of a
Comment object that is attached to the cell. For example, instead of the following code
ActiveCell.NoteText "This is a 1000 character comment."
use a line of code similar to the following:
ActiveCell.Comment.Text "This is a 1000 character comment."
Using the NoteText Method with Comments Longer Than 255 Characters
If you use the
NoteText method to apply a comment that is longer than 255 characters in length to a cell, the new comment is not applied to the cell, and you do not receive an error message.
For example, if you run a macro with the following code
ActiveCell.NoteText String(256, "x")
and the active cell does not already contain a comment, no comment is added
to the cell because the length of the new comment would exceed 255
characters.
If you run a macro with the following code
ActiveCell.NoteText ActiveCell.NoteText & String(100, "x")
and the length of the existing comment exceeds 155 characters, the comment
is not updated because the length of the new comment would exceed 255
characters.
NOTE: In versions of Microsoft Excel before Microsoft Excel 97, the first 255 characters of text are applied to the comment; the remaining characters are truncated.
Using Comment.Text to Change the Comment Applied to a Cell
When you use
Comment.Text to change the comment applied to a cell, the cell must already have a comment applied to it. If no comment was previously applied to the cell, you receive the following error message:
Run-time error '91':
Object variable or With block variable not set.
To apply a comment to a cell, use code similar to the following:
ActiveCell.AddComment
NOTE: If the active cell already has a comment applied to it, you receive the following error message when you run the code:
Run-time error '1004':
Application-defined or object-defined error.
To add a comment to a cell that may or may not contain a comment, use code
similar to the following:
Sub AddACommentToTheActiveCell()
' The following line suppresses the run-time error message when
' adding a comment to a cell.
On Error Resume Next
' Add a comment to the cell. If the cell already contains a comment,
' this line does nothing.
ActiveCell.AddComment
' Return to normal error handling.
On Error GoTo 0
' Add the text to the comment. If the cell already contains a
' comment, this is all you actually need.
ActiveCell.Comment.Text "This is a comment."
End Sub
Using Comment.Text to Add New Text to an Existing Comment
If you want to add new text to an existing comment while preserving the
original comment text, use a line of code similar to the following:
ActiveCell.Comment.Text ActiveCell.Comment.Text & "New Comment Text"
Characters over the 32,767 character limit for comments are truncated.