Please Note: This article is written for users of the following Microsoft Excel versions: 97, 2000, 2002, and 2003. If you are using a later version (Excel 2007 or later), this tip may not work for you. For a version of this tip written specifically for later versions of Excel, click here: Copying Comments to Cells.
by Allen Wyatt
(last updated August 3, 2019)
Hector has a large worksheet containing approximately 600 rows and 70 columns. Spread throughout these 43,000 cells are about 200 cells with comments. Hector wants to extract the comments and place them into cells to the right of the main body of the data table. If a comment, for instance, is attached to cell C43, then he'd like the text from that comment to end up in cell CC43 and the original comment to be deleted.
You might think that you could use Paste Special to perform the task, but that doesn't work. If you copy the original cells and then use Edit | Paste Special | Comments, then only the comments are pasted to the target cells. They are still comments, and not text in cells, which goes against Hector's goal.
The only way to handle this type of extraction is to use a macro. The following, when run on a selection of cells, will extract the comments, move the comment text, and then delete the original comment.
Sub CommentsToCells() Dim rCell As Excel.Range Dim rData As Excel.Range Dim sComment As String ' Horizontal displacement Const iColOffset As Integer = 78 ' extract comments from selected range If TypeName(Selection) = "Range" Then Set rData = Intersect(Selection, ActiveSheet.UsedRange) For Each rCell In rData.Cells On Error Resume Next sComment = rCell.Comment.Text If Len(sComment) > 0 Then rCell.Offset(, iColOffset).Value = sComment rCell.Comment.Delete End If sComment = "" On Error GoTo 0 Next End If End Sub
The macro uses the iColOffset constant to specify how many cells to the right a comment's text should be moved. In this case, the offset (78) is equal to three "alphabets" (26 * 3), so the text of a comment originally in column C will end up in column CC.
ExcelTips is your source for cost-effective Microsoft Excel training. This tip (2981) applies to Microsoft Excel 97, 2000, 2002, and 2003. You can find a version of this tip for the ribbon interface of Excel (Excel 2007 and later) here: Copying Comments to Cells.
Create Custom Apps with VBA! Discover how to extend the capabilities of Office 2013 (Word, Excel, PowerPoint, Outlook, and Access) with VBA programming, using it for writing macros, automating Office applications, and creating custom applications. Check out Mastering VBA for Office 2013 today!
Comments can be a boon when you want to annotate your worksheets. If you want, you can instruct Excel to print the ...Discover More
Normally Excel displays comments in a color reminiscent of sticky notes you keep around your office. If you want them to ...Discover More
Have you ever chosen to edit a comment, only to find that the comment is quite a ways from the cell with which it is ...Discover More
FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
Got a version of Excel that uses the menu interface (Excel 97, Excel 2000, Excel 2002, or Excel 2003)? This site is for you! If you use a later version of Excel, visit our ExcelTips site focusing on the ribbon interface.