Gord Dibben was thinking very hard :
The only way around all the restrictions is have a macro which
Unprotects the sheet, does the sort or filter then Reprotects.
To add...
I usually use a _SheetActivate event to reset protection and specify
UserInterfaceOnly:=True in the args (because this doesn't persist
between sessions). This usually serves using VBA macros to do sorting,
outlining, or toggling AutoFilter to specific ranges. I may be wrong
but my understanding of how the sheet protection rules work is they are
only applied to the UI, and must be managed by VBA in one way
(protect/unprotect) or the other. I prefer the other because I don't
need to code specially for protected sheets otherwise. Sheet protection
settings are stored in local defined names so I don't have to test if a
sheet needs protection reset when activated because that event fires on
every sheet regardless if it's to be protected or not based on the
value stored in ActiveSheet.Names("uiProtect"). Probably a bit more
complex than what's needed here but it's a standard I use for all
projects since most all of my projects are multi-sheet/multi-file apps.
--
Garry
Free usenet access at
http://www.eternal-september.org
ClassicVB Users Regroup! comp.lang.basic.visual.misc