如何在excel设置一个按钮控制特定单元格的写入

当选择这个按钮后,文件中的一些特定的单元格就没有写入功能,反之没有选择这个按钮,相应的单元格就恢复写入功能?
对于VB的东西,我不太懂,所以麻烦一定帮我直接弄好,若没有涉及我则可以自行解决!

2楼的那种方法貌似不行,我需要一个类似开关的按钮,就像开灯关灯一样,点了就关,取消就开。明白?

在sheet1里增加一个CommandButton1,Alt+F11打开VBE双击左边的sheet1将下面代码复制到中间的代码区.关闭VBE.将CommandButton1结束设计模式即可.

如需要请发电邮到[email protected]

Option Explicit

Private Sub CommandButton1_Click()
If CommandButton1.Caption = "Can input" Then
CommandButton1.Caption = "Can NOT input"
Else
CommandButton1.Caption = "Can input"
End If
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim rng As Range
Set rng = Intersect(Target, Range("A1:D10")) 'A1:D10表示一定条件不能编辑的区域.
If rng Is Nothing Then Exit Sub

If CommandButton1.Caption = "Can input" Then
Exit Sub
Else
Range("D11").Select '"D11"表示当选取不能编辑区域时,默认选择储存格.
End If

End Sub
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-09-14
可以利用数据有效性,假定要达到的要求是A1:A10中是否可以输入由B1单元格控制,选定B1,数据,有效性,序列,来源下面框中输入
准许输入,不准输入
确定,再选定A1:A10,数据,有效性,自定义,公式,下面框中输入
=IF($B$1="准许输入",1,0)
确定,再在B1中选择“准许输入”,就可以在A1:A10中输入了,如果选择“不准输入”,A1:A10中就不能输入了。
第2个回答  2010-09-14
1.创建控件:ToggleButton1调整好位置等
2.编缉控件代码如下(密码是12345):

Private Sub ToggleButton1_Click()
If ToggleButton1.Value = True Then
ToggleButton1.Caption = "已解锁"
Sheet1.Unprotect Password:="12345"
ToggleButton1.TripleState = True
Else
ToggleButton1.Caption = "已锁定"
Sheet1.Protect Password:="12345"
ToggleButton1.TripleState = False
End If
End Sub

3.设置好可编缉区域
4.运行按钮一次就可以了
第3个回答  2010-09-14
你说的好像只有把工作表设定为保护状态才行,可以这样试试:
点“格式”,在下拉菜单的“保护工作表”点击右键——添加到快速访问工具栏,这样就相当于你说的,不过,步骤多1、2步,你试一下。
相似回答