乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > excel 如何实现:单元格区域的内容一旦录入就不能修改-excel设置单元格不能修改,表格部分单元格不能修改

excel 如何实现:单元格区域的内容一旦录入就不能修改-excel设置单元格不能修改,表格部分单元格不能修改

作者:乔山办公网日期:

返回目录:excel表格制作


权限就应该没法设置,不过你到是可以限制不能修改,如zd果你用的是office 2003,你就可以先选择工具选项栏,然后列表里面找到保护选项,然后可以通过设置密码来现在其他用户修改里面的数据,保护里面的设置划分的挺详细的,你可以根据你的情况来设定怎样的保护,如果不知怎样使用可以一个一个的试下,相信你一定能成功的。

答案补充:
你既然都找到保护了,后面的设置你就不想亲自尝试一下吗?自己探索后得到的结果会让人更兴奋哟。
首先这个保护呢,既可以保护整个工作薄也可以保护单个的工作表,如果你是想保护单个工作表里面的一部分区域呢,你就可以先把这片区域选中,然后再点工具--->保护--->保护工作表,然后在弹出的选项卡上输入保护密码(保护当然是通过密码来保护啦^_^),下面还可以选择详细的保护措施;如果你想保护整个工作薄那就简单了,直接选保护工作薄然后输入个密码别人就只能看不能改了。

给你个有点投机取巧的方法,用的不是工作表保护命令实现的。代码如下:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim a As Range
If Target.Count = 1 Then
       If (Target.Column = 1 Or Target.Column = 2) And Target.Value <> "" Then
        MsgBox ("禁止修改数据")
        Cells(Target.Row, 3).Select
    End If
Else
Set a = Target
    If a(1, 1).Column < 3 Then
        MsgBox ("禁止选择包含AB两列的多个单元格")
        Cells(a(1, 1).Row, 3).Select
    End If
End If
End Sub

附件中的文件供你参考。如有问题请继续追问。


密码是123正确才能修改内容,否则就去选择A1单元格。对工程另外做密码保护。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
With Target
If .Value <> "" Then
PW = InputBox("修改内容请输入密码:")
If PW <> "123" Then
Cells(1, 1).Select
Else
Exit Sub
End If
End If
End With
End Sub

用VBA解决。首先将此表的宏安全性设置最低,ALT+F11打开VBA窗口,双击左边的SHEET1或THISWORKBOOK,添加代码,右键设置VBA工程属性,将工程保护用密码保护。代码实现所有的目标单元格只要不为空,就不能动。空的可以动。
代码如下:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
With Target
If .Value <> "" Then
dataN = .Value
MsgBox ("不能修改")
.Value = dataN
End If
End With
End Sub

不好意思,代码应该e5a48de588b67a686964616f339将目标单元格移开,防止使用右键等,我选择A1单元格。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
With Target
If .Value <> "" Then
dataN = .Value
MsgBox ("不能修改")
.Value = dataN
Cells(1, 1).Select
End If
End With
End Sub

相关阅读

关键词不能为空

ppt怎么做_excel表格制作_office365_word文档_365办公网