FIX: OLE Automation to Excel 8.0 Fails Using a 16-bit Client

ID: Q170402


The information in this article applies to:


SYMPTOMS

If you use a 16-bit Visual Basic client to Automate Microsoft Excel 97 under Windows 95, you may receive the following error:

"<application> caused an invalid page fault in module kernel32.dll"
This error only occurs on Windows 95 with Microsoft Excel 97. The error does not happen on Windows NT 4.0 or with Microsoft Excel 95.


RESOLUTION

There are several solutions to this problem.


STATUS

Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. This problem has been fixed in Microsoft Windows 98.


MORE INFORMATION

The following example only fails on Windows 95 using a 16-bit client application to Microsoft Excel 97. This will only fail on machines that do not have DCOM for Windows 95 installed.

Steps to Reproduce Behavior

  1. Create a new Visual Basic 4.0 16-bit project.


  2. Add a CommandButton to Form1.


  3. Add the following code to Form1:


  4. 
    Dim oExcel as object
    
    Private Sub Form_Load()
    Set oExcel = CreateObject("Excel.Application")
    End Sub
    
    Private Sub Command1_Click()
      oExcel.Workbooks.add
      oExcel.Visible = True
      'The error usually happens on one of the next 3 lines
      oExcel.Sheets(1).Activate
      oExcel.Range("a1").Value = 1
      oExcel.Range("a2").Value = 2
    End Sub 
  5. Run the project by pressing the F5 Key.


  6. Click the CommandButton.


Additional query words: XL97 XL8 16bit ipf crash


Keywords          : kbnokeyword kbExcel kbVBp300bug kbVBp400bug kbWinOS98fix kbGrpDSO kbOffice2000 
Version           : :; WINDOWS:3.0,4.0,97
Platform          : WINDOWS 
Issue type        : kbbug 

Last Reviewed: June 4, 1999