问题描述
下面有一个代码,我尝试将参考范围更改为动态范围。我以某种方式引用了它。任何想法如何解决这一问题?如果我去Workrange
,基本上Workrange.Select
引用是可以的,但是在“相交”上下文中不起作用。
Set StartCell = Range("A5")
Set StartSheet = Worksheets("Data")
With Worksheets("Data").Range("A4:BZ4")
Set LastColumn = .Find("Comment",LookIn:=xlValues)
End With
Set Workrange = StartSheet.Range(StartCell,StartSheet.Cells(5000,LastColumn.Column))
If Not Intersect(Target,Range("Workrange")) Is nothing Then ' --> This does NOT work
'If Not Intersect(Target,Range("A5:AC5000")) Is nothing Then --> THIS WORKS.
If Target.Count > 1 Then Exit Sub
Cells(Target.Row,LastColumn.Column + 1).Value = Environ("username")
Cells(Target.Row,LastColumn.Column + 2).Value = Format(Now,"dd/mm/yyyy_hh.mm.ss")
End If
End Sub
解决方法
应该是:
If Not Intersect(Target,Workrange) Is Nothing Then
使用Range("Workrange")
时,它正在被称为“工作范围”(公式->名称管理器)的工作簿中查找范围。