我正在尝试调用一个名为" RE_environmental"当细胞名为" RE_1"被改变(即它们在单元格中标记X)。我已经尝试了几种不同的代码变体,包括这两种,并且没有发生任何事情:
[如果我使用确切的单元格位置而不是指定的单元格,则第一个代码可以正常工作。 - > $ E $ 61]
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "RE_1" Then
Call RE_environmental
End If
End Sub
AND
Private Sub Worksheet_Change(ByVal Target As Range)
If Range("Name").Select = "RE_1" Then
Call RE_environmental
End If
End Sub
- 感谢高级版,如果您需要更多信息,请与我们联系。
答案 0 :(得分:1)
如果Target
始终是单格范围,则可以使用此单位:
If Target.Address = Range("RE_1").Address Then
Call RE_environmental
End If
如果Target
可以是多单元范围,请使用此单词:
If Not Intersect(Target, Range("RE_1")) Is Nothing Then
Call RE_environmental
End If
答案 1 :(得分:1)
使用你的第一个答案,但做出这个小改动:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = Range("RE_1").Address Then
Call RE_environmental
End If
End Sub
简单的语法错误!
编辑:要在单元格为空时停止RE_environmental运行,只要RE_environmental正在清空,就将RE_environmental中的代码放入do-while(不是isempty(Range(" RE_1")))中#34; RE_1&#34 ;.在RE_environmental运行时,用户无法编辑单元格。