Microsoft KB Archive/115859

= PRB: OLE Automation Err: Method Not Applicable for This Object =

Article ID: 115859

Article Last Modified on 10/29/2003

-

APPLIES TO


 * Microsoft Visual Basic 3.0 Professional Edition
 * Microsoft Visual Basic 3.0 Professional Edition

-



This article was previously published under Q115859



SYMPTOMS
Certain valid OLE Automation methods cause the following error in Visual Basic:

Method not Applicable for This Object.



CAUSE
This occurs if the method is a reserved word in Visual Basic. For example, Close is a reserved word in Visual Basic. If you try to use Close in an OLE Automation command, the Visual Basic parser complains and gives you the error message.



RESOLUTION
To use OLE Automation methods that are reserved words in Visual Basic, use the [] notation. For example, wrap the word Close in square brackets. This stops Visual Basic from trying to interpret Close as a Visual Basic statement.



Steps to Reproduce Behavior
 Start a new project Visual Basic. Form1 is created by default. Add a command button (Command1) to Form1.  Add the following code to the Command1 Click event procedure: Sub Command1_Click Dim sheet As Object Set sheet = CreateObject("Excel.Sheet.5") ' The following line causes the "Method not Applicable for        ' This Object" error: sheet.Parent.Close Set sheet = Nothing MsgBox "Excel Object created and destroyed successfully!" End Sub   Run the application. You will get a "Method not Applicable for This Object" error on the line of code that reads: sheet.Parent.Close   Place square brackets around the word Close in the highlighted line. The line should now read: sheet.Parent.[Close]  Run the program. It should run without error.</li></ol>

Keywords: kberrmsg kbprogramming kbprb KB115859

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.