Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.

Expand/Collapse Grouped Data in Protected Worksheet

Skip to first unread message

Robert Slattery

Apr 12, 2005, 7:05:03 PM4/12/05
I've created a worksheet that will be distributed to 300+ users in an
investment group. It contains formulas and computations in cells that could
easily be overwritten by spreadsheet novices, so I've protected the worksheet
so users can only edit the cells they need to for the sheet to return the
info they need. The problem is: after protecting the worksheet, Excel won't
allow the user to expand or collapse grouped rows that list detailed
information on each step of the calculations. This is inconvenient because
I'd like to give the users the ability to expand the spreadsheet to see
what's going on, but collapse the extra data for printing purposes. MS
Support said that this functionality wasn't available (but it should be), so
I'm curious if anyone has ideas for a good workaround? The spreadsheet can
be grabbed from - password is
blank to unlock. Any feedback would be greatly appreciated!

Jim Cone

Apr 12, 2005, 8:31:33 PM4/12/05

I modified your workbook slightly, added some code and a couple
of buttons from the Forms toolbar. I believe it does what you want.

1. Insert a row just above "auction items", call it Details and format it
the same as the Summary row.
2. Clear the outline
3. Add a button to cell B25 with the caption "Details"
4. Add a button to cell C25 with the caption "Summary"
5. Add a module to your workbook and insert the following code...
Sub ShowTheDetails()
If Rows(27).Hidden = True Then
Rows("27:43").Hidden = False
Rows("27:43").Hidden = True
End If
End Sub

Sub ShowTheSummary()
If Rows(45).Hidden = True Then
Rows("45:53").Hidden = False
Rows("45:53").Hidden = True
End If
End Sub

6. Assign ShowTheDetails macro to the "Details" button.
7. Assign ShowTheSummary macro to the "Summary button.

I will be glad to send you the workbook with the changes in it, if you
would like to see it. Remove XXX from my email address.


Jim Cone
San Francisco, USA

"Robert Slattery" <> wrote in message


Apr 12, 2005, 10:11:01 PM4/12/05
I had a very similar requirement with grouped columns.

Dave Peterson (thanks agin Dave) posted the following and it worked fine for
me. The only qualifiication is that someone who knows what they are doing
can edit the macro and see your password - not a problem in my case as I am
trying to protect the sheet from novices no experts!

'If you already have the outline applied, you can protect the worksheet in

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.)

If you're new to macros, you may want to read David McRitchie's intro at:'

Dave Peterson

Apr 12, 2005, 10:39:19 PM4/12/05
You can actually protect the project from most people.

Next time you're in the VBE, select that project.
Then Tools|VBAProject Properties|Protection Tab

But this protection can be broken in a matter of seconds--if the user knows how.

But it does keep most out.


Dave Peterson


Nov 8, 2005, 2:01:03 PM11/8/05
I have the same problem like Robert, but I seem not to understand the
instructions that you gave Robert. I’m not familiar with macro. Is there away
it could be done directly with excel or do I have to learn macro.


May 13, 2010, 2:44:02 AM5/13/10
I'm running on Excel 2007 and I need to enable the end users to
expand/collapse columns in a protected sheet

Instead of adding VBA language and buttons to run the script backend to
ungroup/group columns, is there any other ways in Excel that will facilitate
the same process?

Any feedback will be greatly appreciated

Nov 24, 2015, 10:51:21 AM11/24/15
What do you mean by (auto_open/workbook_open??)


Nov 24, 2015, 12:08:22 PM11/24/15
> What do you mean by (auto_open/workbook_open??)

Workbook_Open is an Application 'event'.
May not always work, especially if the file is corrupt, because the
Application controls its functionality! The Application usually
disables events in corrupt files as well as for any other reason it
deems fit to do so during runtime.

Auto_Open is an AutoRunMacro 'procedure'.
This will pretty much always work even though it's also controlled by
the Application because procedures are managed differently than how
events are managed!


Free usenet access at
Classic VB Users Regroup!
0 new messages