Those who've done Excel macro programming before probably know this: Assigning a value to a range clears the clipboard. For instance, with data copied to the clipboard, the following code works just fine:
ActiveSheet.Paste (Range("A2"))
Range("A1").Value = "Data1"
Reversing the two lines causes the error "Paste method of worksheet class failed." Turning off the AutoFilter feature also clears the clipboard. To copy a filtered range to another spot in the worksheet use the Advanced Filter method instead, which supports copying filtered data to another range.