的目标.地址是单独选择的多个单元格范围



我有以下代码:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$N$16" Then
Sheet3.Unprotect ""
Call QuantityisActivated(Target)
Sheet3.Protect ""
End If

结束子

我如何为多个Target.Adress使用相同的代码例如,我想在这里从N16到N30范围的单元格

Sub QuantityisActivated(Target)
MsgBox "This is a sample box"
End Sub

如果更改了范围内的单元格,则可以使用以下命令仅触发QuantityisActivated:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range, c As Range
Set rng = Intersect(Target, Range("N16:N30"))
If Not rng Is Nothing Then

'If you want it to run on each cell withing the range..
For Each c In rng.Cells
Call QuantityisActivated(c)
Next
'Or if you want it to run once, if any cell in range is affected
Call QuantityisActivated(rng)
End If
End Sub

我已经包含了处理受影响范围的两种可能的方法-要么在单元格级别上,要么作为整个范围,因为不清楚您更喜欢哪个问题。

最新更新