在受保护的excel表格中进行数据筛选
非常多的朋友在实际工作中把重要的excel表格进行保护,这样就可以繁殖excel工作表的内容被随意更改了,我们在保护excel工作表的同时,也希望可以对excel工作表中的数据使用自动筛选功能进行一些数据分析的工作,我们只需要进行一些设置即可在受保护的excel表格中进行数据筛选。
从Excel 2002开始,工作表保护功能中允许用户设置在保护工作表的同时所允许进行的部分操作类型,其中就包括自动筛选。
选中A1:C17中的任意单元格。 单击菜单“数据”→“筛选”→“自动筛选”,使表格进入自动筛选模式。 单击菜单“工具”→“保护”→“保护工作表”,在“保护工作表”对话框的“允许此工作表的所有用户进行”列表框中,勾选“使用自动筛选”选项。如果需要,可以在“取消工作表保护时使用的密码”文本框中输入保护工作表的密码,最后单击“确定”,关闭“保护工作表”对话框。 现在,虽然工作表处于受保护状态,不能对任何单元格进行修改,但仍然可以使用“自动筛选”功能。
我们在这里需要注意步骤2与步骤3的操作顺序一定不能颠倒,即用户必须在保护工作表以前就让数据区域或列表进入自动筛选模式。否则,如果先执行保护工作表命令,则无法开启或关闭自动筛选模式,“自动筛选”命令也将是灰色的。 在Excel 2000或更低版本中,保护工作表功能没有提供与自动筛选相关的设置,但是用户仍然可以借助宏代码来进行设置。假设数据保存在Sheet1中。
选中A1:C17中的任意单元格。 单击菜单“数据”→“筛选”→“自动筛选”,使表格进入自动筛选模式。 按<Alt+F11>打开VBA编辑器窗口,按<Ctrl+R>组合键显示工程资源管理器窗口,双击其中的ThisWorkbook,在右边的代码窗口中输入以下代码:
Private Sub Workbook_Open()
Worksheets("sheet1")。Protect Password:="pwd", userInter Faceonly:=True
Worksheets("sheet1")。EnableAutoFilter = True
End Sub 保存并关闭工作簿文件。 当再次打开工作簿文件时,工作表Sheet1将被保护,但是自动筛选功能仍然可用。用户可以根据自己的需要,修改上述代码中的工作表名称与密码(pwd)。与在Excel 2002及以上版本中相似,用户必须先让数据表进入自动筛选模式,再运行宏代码执行工作表保护。