Microsoft KB Archive/183534

= OFF98: Visual Basic Modules Cannot Be Hidden or Protected =

Article ID: 183534

Article Last Modified on 6/18/2005

-

APPLIES TO


 * Microsoft Office 98 for Macintosh
 * Microsoft Excel 98 for Macintosh
 * Microsoft Word 98 for Macintosh
 * Microsoft PowerPoint 98 for Macintosh

-



This article was previously published under Q183534





SYMPTOMS
In the programs listed at the beginning of this article, you cannot hide or protect a module either manually or by using a macro.



CAUSE
This behavior is by design of the programs listed at the beginning of this article. In earlier versions of Microsoft Excel, macro sheets and Visual Basic modules are contained on tabs in a workbook. These tabs can be hidden or protected manually or by using the Visible, Protect, or Unprotect commands in a macro.

However, in Microsoft Excel 98, Microsoft Word 98, and Microsoft PowerPoint 98, Visual Basic modules are displayed in the Visual Basic Editor. Modules in the Visual Basic Editor cannot be hidden or protected in the same way that they were hidden or protected in earlier versions of Microsoft Excel.



WORKAROUND
To hide or protect a module in Microsoft Excel 98, create an add-in file. When you open an add-in file, it is not possible to view the module it contains, and code in the add-in cannot be viewed or modified.

To make an add-in file in Microsoft Excel 98, follow these steps:
 * 1) In the Visual Basic Editor, click  Properties on the Tools menu, where  is the name of the project for which you are creating an add-in.
 * 2) Click the Protection tab.
 * 3) Click the "Lock Project for Viewing" check box. Type a password in the Password box, and then type the password again in the Confirm Password box.
 * 4) Click OK.
 * 5) On the File menu, click "Close and Return To Microsoft Excel."
 * 6) In Microsoft Excel, click Save As on the File menu.
 * 7) In the Save As Type box, click Microsoft Excel Add-In or Microsoft Excel Workbook.

If you want to change the name of the file, change it in the File Name box.
 * 1) Click Save.

Note that if you saved the file as an add-in, when you open the add-in, no window appears, and you cannot unhide the add-in. To view a module in the add-in or the workbook, follow these steps:
 * 1) On the Tools menu, point to Macro, and then click Visual Basic Editor.
 * 2) In the Visual Basic Editor, click the entry for the add-in in the Project pane.
 * 3) When you are prompted, type the password for the add-in, and then click OK.

You can now view a module in the add-in or workbook and make changes to your macro code.



MORE INFORMATION
Microsoft provides programming examples for illustration only, without warranty either expressed or implied. This includes, but is not limited to, the implied warranties of merchantability or fitness for a particular purpose. This article assumes that you are familiar with the programming language that is being demonstrated and with the tools that are used to create and to debug procedures. Microsoft support engineers 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 requirements. The following sample procedures are provided to further clarify the difference between hiding modules in Microsoft Excel 5.0, and 98. Sub HideMe ThisWorkbook.Modules("Module1").Visible = False End Sub

Sub ShowMe ThisWorkbook.Modules("Module1").Visible = True End Sub

Sub ReallyHideModule2 ThisWorkbook.Modules("Module2").Visible = xlVeryHidden End Sub Microsoft Excel 98:

Nothing happens when you run these sample procedures in Microsoft Excel 98. Because modules are not tabbed sheets, they no longer have a Visible property, and you cannot hide or unhide them.

Similarly, using the Protect or Unprotect methods to protect or unprotect a module does not work in Microsoft Excel 98. Because modules are not tabbed sheets, you cannot protect or unprotect them.

Microsoft Excel 5.0:

When you run the HideMe procedure, Microsoft Excel hides Module1. Running the ShowMe procedure unhides Module1. Running the ReallyHideModule2 procedure hides Module2 and prevents it from being unhidden without using a macro or code.

Additional query words: addin 8.0 WD97 PP97 XL98 OFF98

Keywords: kbbug kbprogramming kbpending KB183534

-

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

© Microsoft Corporation. All rights reserved.