【发布时间】:2019-10-12 11:43:46
【问题描述】:
我正在使用工作表更改事件来触发复制粘贴值。工作表更改代码在 sheet2 中
Sub worksheet_change(ByVal Target As Range)
Application.EnableEvents = True
Set Target = Range("AB2")
If Target.Value = "OK" Then
Call myTR1
End If
请注意 AB2 单元格的值来自另一张表
复制粘贴代码在一个模块中
Sub myTR1()
Sheets("BA1").Range("AR6:AS8").Value = Sheets("BA1").Range("AL17:AM19").Value
End Sub
当目标范围更改为“OK”时,我的复制粘贴宏不会触发。我做错了什么?
【问题讨论】:
-
你的
worksheet_change有小的w和小的c所以我猜代码在一个模块中而不是相关的工作表中 -
尝试为变量使用除
Target之外的其他名称,例如TargetCell。这不是 VBA 中的“特殊”词吗? -
@SJR 是的,工作表更改事件代码出现。复制和粘贴值代码位于模块之一中。
-
Please note AB2 cell takes it's value from another sheet哦该死!!!!我刚刚注意到...在这种情况下Worksheet_Change将不起作用 -
您可能需要从
Worksheet_Calculate()的角度重新考虑这一点