在受保护的工作表上对数据进行排序(Microsoft Excel)
当您保护工作表时,Excel会阻止用户对工作表中的数据执行各种各样的任务。用户不再能做的事情之一就是对数据进行排序。如果您希望用户能够对数据进行排序,但仍保护工作表怎么办?
如果您使用的是Excel 2002或Excel 2003,则答案很简单:
这些版本的Excel允许您指定用户可以和不能使用受保护的工作表执行的操作。当您选择工具|保护|保护表,Excel将显示“保护表”对话框。对话框的底部是一长列复选框。您需要做的就是选择用户应该对工作表执行的操作。选项(您需要向下滚动一点)是“排序”。如果选择此选项,则用户可以对受保护的数据进行排序。
如果使用的是旧版Excel,解决方案是创建一个宏,该宏取消保护工作表,对数据进行排序,然后再次保护工作表。以下是一个简单的示例:
Sub Sorting() ActiveSheet.Unprotect Range("A1:D100").Sort Key1:=Range("A1"), _ Order1:=xlAscending, Header:=xlGuess, _ OrderCustom:=1, MatchCase:=False, _ Orientation:=xlTopToBottom ActiveSheet.Protect End Sub
本示例根据A列的内容对A1:D100范围内的数据进行排序。宏说明了此方法的一般概念,但是您需要对其进行修改以反映数据和用户的需求。
如果使用宏路线,则需要将宏分配给工具栏按钮或菜单命令。否则,用户将永远无法使用它,因为在受保护的文档中禁用了“宏”菜单。
注意:
如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。
_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。
本技巧(2458)适用于Microsoft Excel 97、2000、2002和2003。可以在以下功能区中为Excel的功能区界面(Excel 2007及更高版本)找到本技巧的版本: