作者:乔山办公网日期:
返回目录:excel表格制作
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Set Target = Application.Union(Target, Target)
[b1] = Application.WorksheetFunction.Sum(Target)
End Sub
不用vba
选择A列到F列,如图设置数据有效性
这样拖放,粘贴进去1-9以外的数都不会出错。
Change 事件百
当用户更改工作表中的单元格,或外部链接引起单元格的更改时产生此事件。度
Private Sub Worksheet_Change(ByVal Target As Range)
Target 更改的区域。可以是多个单元格。
重新计算引起的单元格更改不触发本事件。
示例:
当工专作表区域Columns(“A:E”)内值发生改变时,触发工作表Change事件,撤消操作。
Private Sub Worksheet_Change(ByVal Target As Range)
With Target
If .Column <= 4 Then
'停止响应事属件
Application.EnableEvents = False
'撤消上一操作
Application.Undo
Application.EnableEvents = True
End If
End With
End Sub
增加一行判断函数道试试:回
Private Sub Worksheet_Change(ByVal Target As Range)
If Not (Target.Cells.Row = 2 And Target.Cells.Column = 1) Then Exit Sub
If Sheets("检查标记答").Cells(2, 1).Value = 1 Then
Sheets("检查标记").Unprotect Password:="123"
Sheets("检查标记").Cells(1, 1).Value = "标记"
Sheets("检查标记").Cells(2, 1).Value = 0
Sheets("检查标记").Protect Password:="123"
Else
Exit Sub
End If
End Sub