Microsoft KB Archive/170740

= XL97: Error Running SQLRetrieve with Embedded Chart =

Article ID: 170740

Article Last Modified on 11/23/2006

-

APPLIES TO


 * Microsoft Excel 97 Standard Edition

-



This article was previously published under Q170740



SYMPTOMS
When you run a macro that returns data to Microsoft Excel, the following error message appears:

This program has performed an illegal operation and will be shut down. If the problem persists contact the program vendor.

If you click Details, an error message similar to the following appears:

EXCEL caused an invalid page fault in module EXCEL.EXE at 0137:30035ffa.

If you click Close, Microsoft Excel closes.



CAUSE
This problem occurs when you do the following:


 * You click (activate) an embedded chart in the worksheet. -and-


 * You run a macro that uses the SqlRetrieve function.



WORKAROUND
Microsoft provides programming examples 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 article assumes that you are familiar with the programming language being demonstrated and the tools used to create and debug procedures. Microsoft support professionals 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 needs. If you have limited programming experience, you may want to contact a Microsoft Certified Partner or the Microsoft fee-based consulting line at (800) 936-5200. For more information about Microsoft Certified Partners, please visit the following Microsoft Web site:

https://partner.microsoft.com/global/30000104

For more information about the support options that are available and about how to contact Microsoft, visit the following Microsoft Web site:

http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS

To work around this problem, deselect the chart by clicking a cell on the worksheet before you run the macro. To do this programmatically, add the following statement on a line before the SqlRetrieve command: Range("A1").Activate NOTE: the range you select can be any cell on the worksheet.



STATUS
Microsoft has confirmed this to be a problem in Microsoft Excel 97 for Windows. This problem was corrected in Microsoft Excel 97 for Windows, Service Release 1.



MORE INFORMATION
The SqlRetrieve function is available as part of the Xlodbc.xla ODBC add-in included with Microsoft Excel. The ODBC functions allow you to connect to external data sources directly.

For additional information about the Xlodbc.xla add-in, please see the following article in the Microsoft Knowledge Base:

124218 XL: Macro Examples Using XLODBC Functions

