If you protect the sheet in code (auto_open/workbook_open??), you can allow
this:
Option Explicit
Sub auto_open()
With Worksheets("sheet1")
.Protect Password:="hi", userinterfaceonly:=True
.EnableOutlining = True
End With
End Sub
It needs to be reset each time you open the workbook. (excel doesn't remember
it after closing the workbook.)
(you could use the workbook_open even under ThisWorkbook, too.)
Don't forget to lock the VBA Project, too. Else you'll have inquisitive types
looking at your code and seeing the password.
Inside the VBE, you can lock the project.
Tools|VBAProject Properties|Protection tab.
Give it a memorable password and lock the project for viewing.
If you're new to macros, you may want to read David McRitchie's intro at:
http://www.mvps.org/dmcritchie/excel/getstarted.htm