XL97: Workbook Created via Automation Opens as Hidden

ID: Q193432


The information in this article applies to:
  • Microsoft Excel 97 for Windows


SYMPTOMS

When you open a workbook in Microsoft Excel, the workbook window may be hidden.


CAUSE

This problem will occur if the following conditions are true:

  • The workbook was created by automating the SaveAs method.


  • -and-

  • The source workbook was opened using the GetObject method.



WORKAROUND

To work around the problem, use the appropriate method.

Method 1: If the Workbook Has Already Been Created

If the workbook has already been created, you must unhide it. To do this, follow these steps:
  1. On the Window menu, click Unhide.


  2. In the Unhide Workbook list, click to select your workbook, and then click OK..


  3. On the File menu, click Save.


The workbook will not be hidden the next time you open it.

Method 2: Change the Visual Basic for Applications Code

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 the Microsoft fee-based consulting line at (800) 936-5200. For more information about the support options available from Microsoft, please see the following Microsoft World Wide Web site:
http://www.microsoft.com/support/supportnet/overview/overview.asp
To work around the problem, you can add a line of code to the Visual Basic for Applications code that was used to create the workbook to unhide the workbook window before it is saved. The following example illustrates the line of code necessary to accomplish this:

Sub AutomationTest()
    Dim xlworkbook As Object
    ' Open the existing file.
    Set xlworkbook = GetObject("C:\Test.xls")
 
    ' Set the Visible property of the workbook window to True.
    ' This will prevent the problem.
    ' Note: This will note make Excel visible during the execution
    ' of this prodecure.
    xlworkbook.Parent.Windows(xlworkbook.Name).Visible = True
 
    With xlworkbook
        ' Save the file as a new name.
        .SaveAs "C:\TestA.xls"
        .Close
    End With
    Set xlworkbook = Nothing
 
End Sub 

Additional query words: ole vb

Keywords : kbdta OffVBA KbVBA
Version : WINDOWS:
Platform : WINDOWS
Issue type : kbprb


Last Reviewed: November 13, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.