Please Note: This article is written for users of the following Microsoft Excel versions: 2007, 2010, and 2013. If you are using an earlier version (Excel 2003 or earlier), this tip may not work for you. For a version of this tip written specifically for earlier versions of Excel, click here: Copying Comments when Filtering.
by Allen Wyatt
(last updated February 21, 2015)
Vinod frequently uses Excel's advanced filtering tools to copy filtered data from one location to another. In some instances he would like to copy not only the cell contents but also the cell comments of the cells that meet the filtering criteria. He's not looking for a way to filter based on comments, but only to copy comments along with the cell contents when using the advanced filtering capabilities of Excel.
As far as we can tell, there is no way to copy comments using advanced filtering; only the cell contents are copied. However, it is possible to easily copy the comments using a two-step process.
First, filter your data, but make sure you do the filtering in-place; don't specify that you want the information copied to a different location. You end up with a filtered list, showing only the cells that meet your criteria. Next, select the cells returned by the filtering. You should then make sure that Excel knows you only want the visible cells selected:
Figure 1. The Go To Special dialog box.
With the visible cells selected (those hidden by the filtering are not selected), you are ready for the second step: Copy the cells to another location using normal editing techniques. The result is that the comments are copied right along with the cell contents.
If you perform this task quite a bit and it even bugs you to do the two steps, you could automate the task. The following macro will apply a filter in-place, copy the visible cells to the Clipboard, and then paste them (and their comments) into a new workbook:
Sub AdvancedFilter_AndCopyComments() With Range("Database") ' filter the data range .AdvancedFilter Action:=xlFilterInPlace, _ CriteriaRange:=Range("Criteria"), Unique:=False ' copy visible cells only .SpecialCells(xlCellTypeVisible).Copy End With ' goto to another worksheet Sheets("Sheet1").Select ' and paste the copied data With Range("A1") .PasteSpecial xlPasteColumnWidths .PasteSpecial xlPasteAll End With Application.CutCopyMode = False End Sub
The macro assumes you have two named ranges set up: one for the data to be filtered (Database) and the other for the filtering criteria (Criteria). Run the macro, and the filtered, commented information ends up on Sheet1.
ExcelTips is your source for cost-effective Microsoft Excel training. This tip (10284) applies to Microsoft Excel 2007, 2010, and 2013. You can find a version of this tip for the older menu interface of Excel here: Copying Comments when Filtering.
Comprehensive VBA Guide Visual Basic for Applications (VBA) is the language used for writing macros in all Office programs. This complete guide shows both professionals and novices how to master VBA in order to customize the entire Office suite for their needs. Check out Mastering VBA for Office 2010 today!
When you use Excel to input and store information, you need to be concerned with whether the information meets your ...Discover More
Filtering is a great asset when you need to get a handle on a subset of your data. Excel even makes it easy to copy the ...Discover More
Need to remove filters and display all rows and columns in all your worksheets? It is not easy to do manually, but with a ...Discover More
Got a version of Excel that uses the ribbon interface (Excel 2007 or later)? This site is for you! If you use an earlier version of Excel, visit our ExcelTips site focusing on the menu interface.