Microsoft KB Archive/124226

= Error '1004' When Using the SQLRequest Macro Function =

Article ID: 124226

Article Last Modified on 8/15/2005

-

APPLIES TO


 * Microsoft Excel 95 Standard Edition
 * Microsoft Excel 5.0c
 * Microsoft Excel 5.0 Standard Edition

-



This article was previously published under Q124226



SYMPTOMS
In the versions of Microsoft Excel listed above, you may receive the following error message when you use the SQLRequest function in a Visual Basic, Applications Edition, macro:

Run-time error '1004': Run method of Application class failed

This error message will occur if the SQLRequest function returns a result set containing more than 4095 elements.



CAUSE
The SQLRequest function has an argument called ColNamesLogical, which specifies whether to return field headings. If this argument is set to TRUE, then in the case above you can only return up to 4094 elements or cells and 1 field heading. If ColNamesLogical is set to FALSE or is omitted, then you can return only 4095 records.



RESOLUTION
To return a result set with more than 4095 elements, use the SQLRetrieve function as it's used in the following sample procedure:

Microsoft provides examples of Visual Basic procedures for illustration only, without warranty either expressed or implied, including but not limited to the implied warranties of merchantability and/or fitness for a particular purpose. This Visual Basic procedure is provided 'as is' and Microsoft does not guarantee that it can be used in all situations. Microsoft does not support modifications of this procedure to suit customer requirements for a particular purpose.

Sample Visual Basic Procedure
This procedure opens a channel to a given data source, executes a query, retrieves the result set to the active cell on the active worksheet, and closes the channel opened by SQLOpen:

Sub GetMyData chan = SQLOpen("DSN=Nwind")

' Get all columns and records from the orders table. SQLExecQuery chan, "SELECT * FROM orders"

' Retrieve the results from SQLExecQuery to the active cell ' and include the field headings.

SQLRetrieve chan, ActiveCell,, , True

SQLClose chan End Sub



STATUS
Microsoft has confirmed this to be a problem in the Microsoft products listed at the beginning of this article. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.

