Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

XL2000: Error Message When Using Paste Method Without Moving Active Cell


View products that this article applies to.

This article was previously published under Q213657

↑ Back to the top


Symptoms

In Microsoft Visual Basic for Applications, you cannot use Paste as a method of the Range object. Because the Paste method is selection-dependent, you must make a selection before you can use the method.

If you do not make a selection, one of the following error messages may appear:
Range does not have Paste method
-or-
Run-time error '438': Object doesn't support this property or method

↑ Back to the top


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 paste data in a Visual Basic for Applications procedure without moving the active cell, do either of the following:
  • To paste data without using the clipboard, use the destination argument of the Copy and Cut methods. The following command copies the contents of cell A1 and pastes it into cell A2:
       Range("A1").Copy Destination:=Range("A2")
    					
  • To paste data using the clipboard, use the destination argument of the Paste method. The following command pastes the contents of the clipboard into cell A2:
       ActiveSheet.Paste Destination:=Range("A2")
    					

↑ Back to the top


More information

If you use the Macro Recorder and click Paste on the Edit menu, the following command is recorded:
   ActiveSheet.Paste
				
This command must be preceded by a command that selects the cell or the range into which the information should be pasted.

↑ Back to the top


References

For more information about the Paste Method, in the Visual Basic Editor, click Microsoft Visual Basic Help on the Help menu, type Paste Method in the Office Assistant or the Answer Wizard, and then click Search to view the topic.

↑ Back to the top


Keywords: KB213657, kbdtacode, kbprb, kbprogramming

↑ Back to the top

Article Info
Article ID : 213657
Revision : 4
Created on : 6/23/2005
Published on : 6/23/2005
Exists online : False
Views : 255