You receive a "Runtime error 1004" error message when you try to copy and to paste filtered data programmatically in an Excel 2003 workbook

Article translations Article translations
Article ID: 905164
Expand all | Collapse all

Symptoms

When you try to copy and to paste filtered data programmatically in a Microsoft Office Excel 2003 workbook, you receive one of the following error messages:
Runtime error 1004: Paste method of worksheet class failed.
Runtime error 1004: Copy method of Range Class Failed.
You receive one of these error messages even though the data is pasted to the workbook.

Note This issue does not occur when the data is not filtered.

Cause

This issue may occur if either of the following conditions is true:
  • The Microsoft Visual Basic for Applications (VBA) macro copies and pastes one whole row in an Excel 2003 workbook.
  • The Microsoft VBA macro copies and pastes a range of 2,516 rows or more rows in an Excel 2003 workbook.

Workaround

Microsoft provides programming examples for illustration only, without warranty either expressed or implied. This includes, but is not limited to, the implied warranties of merchantability or fitness for a particular purpose. This article assumes that you are familiar with the programming language that is being demonstrated and with the tools that are used to create and to debug procedures. Microsoft support engineers 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 requirements.

To work around this issue if your VBA macro copies and pastes a single whole row, change the VBA macro code to copy only the section of the row that contains data. For example, use VBA macro code that is similar to the following code:
Range(Range("A" & ActiveCell.Row), Range("IV" & ActiveCell.Row).End(xlToLeft)).Select
To work around this issue if your VBA macro copies and pastes a range of 2,516 rows or more rows, change your VBA macro code to loop to copy and to paste smaller ranges of data until the range that you want is copied and pasted.

Properties

Article ID: 905164 - Last Review: June 20, 2014 - Revision: 2.0
Keywords: 
kbvba kbprogramming kbautomation kbtshoot kbprb KB905164

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com