由DDE更新触发的基于公式的单元更改的时间戳

我有列A中的数据,并希望A列中的数据更改时在列B中的时间戳。

现在,这里是棘手的部分:列A的值是基于公式的,从一个Vlookup表。 这个Vlookup表有dde链接。 所以没有人工input电子表格。

下面的代码运行良好,如果你必须input数据到列A,但不会为上述scernario或甚至如果你说。 单元格A1 = C1+D1 。 通过改变C1或D1将改变A1 …但是这不会启动macros。

 Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 1 Then Cells(Target.Row, 2).Value = Now End If End Sub 

我对这样的事情并不熟悉,但是在我的工作簿中刷新了Oracle数据库select触发器Worksheet_Change事件和您的代码。 但是,您的情况可能是另一回事 – 我没有看到您的数据结构。

无论如何,尝试使用以下技巧:添加列A中的任何一个简单的公式,例如=A1 (如果A1更改DDE更新) – 它应该更新刷新,因此触发Worksheet_Change事件。

在这里阅读更多: Excel 2000中的DDE链接 – 如何运行一个macros 。