作者:乔山办公网日期:
返回目录:excel表格制作
设置可编辑区域即可,如果确实表格是通过共享的,建议只读即可,保护很容易去掉的。
另外如果你的是规范化的数据建议做个vba筛选处理等。数据就不会乱
把下拉框区域的单元格格式>>保护>>锁定 取消打勾
再设置密码保护
VBA实现排序:
并非全部代码,请百自行举一反三;
代码如下:
Private Sub Workbook_Open() '本代码放在工作簿文件的打开事件中,只要工作簿被打开,这里的代码就会自动被度执行
Dim tmpR As Range '声明了一个问RANGE对象类型的变量答,用来回保存动态选中的答范围
Set tmpR = Sheet1.Range("a2", "b" & CStr(Sheet1.Range("b65536").End(xlUp).Row)) '为对象类型的变量赋值需要使用SET关键字;同时将A2到B列最后一非空单元格所在区域赋值给tmpR变量
tmpR.Select '选中上述区域
tmpR.Sort Sheet1.Columns("b"), xlDescending '将上述区域按照B列数据降序排序
End Sub
还需要再有一个触发器,以实现点一次降序,第二次升序的功能。
最后别忘了给你的vba加一个密码。
嘿嘿,你的要求如果用access来实现就简单多了……
可以对允许数据修改的内容进行排序。
如果是在不允许修改的区域排序,保护工作表后是不能排序的。
使用代码进行排序,也是先取消工作表保护以后排序,排序完之后再进行保护。