Got a version of Excel that uses the menu interface (Excel 97, Excel 2000, Excel 2002, or Excel 2003)? This site is for you! If you use a later version of Excel, visit our ExcelTips site focusing on the ribbon interface.
With more than 50 non-fiction books and numerous magazine articles to his credit, Allen Wyatt is an internationally recognized author. He is president of Sharon Parq Associates, a computer and publishing services company.
Learn more about Allen...
Please Note: This article is written for users of the following Microsoft Excel versions: 97, 2000, 2002, and 2003. If you are using a later version (Excel 2007 or later), this tip may not work for you. For a version of this tip written specifically for later versions of Excel, click here: Preventing Changes to Formatting and Page Size.
April described an all-too-common situation in an office environment: you create a worksheet, get it looking just right, protect it, and then allow others to make changes to the unprotected cells. When you get the worksheet back, there have been changes to the page setup and the formatting that makes the worksheet look different than what you intended.
There are a couple approaches you can take with this problem. The first is to divide your input and output into separate sheets. Create a worksheet where the user can enter their data, and then create an output worksheet that you use to print the data. The output worksheet simply grabs data from the input worksheet through the use of cell references and formulas. Since the user doesn't have access to the output worksheet, then it can't get mucked up.
If the worksheet has been protected, Excel 97 doesn't allow the user to change the formatting of any cells, locked or unlocked. (Formatting changes can be explicitly allowed or prohibited in later versions of Excel.) The only exception is if the user copies formatted cells from another worksheet and pastes them into unlocked cells in the protected worksheet. Unfortunately, there is no way to prevent this, short of using the input sheet/output sheet method already described.
As far as page setup is concerned, Excel allows the page setup (margins, etc.) to be modified, even on a protected worksheet. The best workaround is to create a macro that will set the page setup configuration as you want it, and have the macro run automatically before the worksheet is printed. (Just assign the macro to the BeforePrint event for the workbook.)
If the other user still monkeys around with the settings in a way that rendered the output of the workbook non-standard or even unusable, you may need to resort to non-Excel means to assure compliance. :>)
ExcelTips is your source for cost-effective Microsoft Excel training. This tip (2559) applies to Microsoft Excel 97, 2000, 2002, and 2003. You can find a version of this tip for the ribbon interface of Excel (Excel 2007 and later) here: Preventing Changes to Formatting and Page Size.
Comprehensive VBA Guide Visual Basic for Applications (VBA) is the language used for writing macros in all Office programs. This complete guide shows both professionals and novices how to master VBA in order to customize the entire Office suite for their needs. Check out Mastering VBA for Office 2010 today!