Worksheet.Change 事件 (Excel)
当用户更改工作表中的单元格,或外部链接引起单元格的更改时发生此事件。
语法
表达式。更改 (目标)
表达 一个代表 Worksheet 对象的变量。
参数
名称 | 必需/可选 | 数据类型 | 说明 |
---|---|---|---|
Target | 必需 | Range | 更改的区域。 可以是多个单元格。 |
返回值
Nothing
备注
当单元格在重新计算过程中更改时,不会发生该事件。 使用 Calculate 事件捕获工作表重新计算。
示例
以下代码示例将更改的单元格的颜色设为蓝色。
Private Sub Worksheet_Change(ByVal Target as Range)
Target.Font.ColorIndex = 5
End Sub
以下代码示例将验证以下内容:当单元格值发生更改时,更改的单元格是否位于 A 列,并且单元格的更改值是否大于 100。 如果值大于 100,则 B 列中的相邻单元格的颜色将变为红色。
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Column = 1 Then
ThisRow = Target.Row
If Target.Value > 100 Then
Range("B" & ThisRow).Interior.ColorIndex = 3
Else
Range("B" & ThisRow).Interior.ColorIndex = xlColorIndexNone
End If
End If
End Sub
在单元格中输入数据时,以下代码示例将 A1:A10 区域中的值设为大写。
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("A1:A10")) Is Nothing Or Target.Cells.Count > 1 Then Exit Sub
Application.EnableEvents = False
'Set the values to be uppercase
Target.Value = UCase(Target.Value)
Application.EnableEvents = True
End Sub
支持和反馈
有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。