2017-04-04 84 views
0
Private Sub Worksheet_Change(ByVal Target As Range) 

'Hvis du på noget tidspunkt tilføjer flere rows, så sig til. 
Application.EnableEvents = False 
If Not Intersect(Range("B27:B33"), Target) Is Nothing Then 
    Target.Offset(, 1).Formula = "=UDF_Now()" 
End If 
Application.EnableEvents = True 
End Sub 

每当单元格范围(“B27:B33”)中的单元格更改时,我正在使用以下VBA代码来执行我的用户定义函数。ByVal使用公式的范围。

这工作正常,只要我手动更改范围内的单元格值。现在的问题是,我希望这个宏能够在由公式组成的给定范围内工作。每当我更改任何先例时,范围的单元格值会更改,但我的宏不会执行。

我希望这与公式一起工作,以便在我更改先例并因此更改范围内单元格的值时执行宏。

我希望这是有用的解释。

回答

0

更改事件代码在单元格内容因公式而发生更改时未触发。 如果要在公式更改值时触发事件,则可能会考虑Worksheet_Calculate以及更改事件代码(如果还需要)。