Excel 从Now()函数单元格触发更改事件时出现问题

Excel 从Now()函数单元格触发更改事件时出现问题,excel,vba,events,eventtrigger,Excel,Vba,Events,Eventtrigger,我有一个电子表格,从一个网站导入一些数据,然后过滤和排序到一个列表中。它每5分钟重新导入一次数据 我还有一个单元格,位于名为FinalDisplay的工作表上的单元格O1,它使用以下公式来标记上次更新发生的时间: =文本(现在(),“hh:mm AM/PM”) 最后,我有一个名为FilterSort的宏,它过滤列表,然后对剩余结果进行排序。当我手动运行此宏时,它工作正常 我试图做的是让单元格O1的更改事件在重新导入时更新,从而触发宏运行,以便在导入数据时自动重新筛选/排序。但是,当重新导入

我有一个电子表格,从一个网站导入一些数据,然后过滤和排序到一个列表中。它每5分钟重新导入一次数据

  • 我还有一个单元格,位于名为FinalDisplay的工作表上的单元格O1,它使用以下公式来标记上次更新发生的时间:

  • =文本(现在(),“hh:mm AM/PM”)

    • 最后,我有一个名为FilterSort的宏,它过滤列表,然后对剩余结果进行排序。当我手动运行此宏时,它工作正常
    我试图做的是让单元格O1的更改事件在重新导入时更新,从而触发宏运行,以便在导入数据时自动重新筛选/排序。但是,当重新导入并更新时间戳时,不会发生其他任何事情

    我认为的问题是,我认为被重新计算的Now()函数可能不会作为更改事件处理,因为当我只需输入一个数字并覆盖公式时,宏就会启动,一切都正常

    我已经读到Now()是(或可以是)一个“易失性函数”,它的处理方式可能与我预期的不同。我认为这就是问题所在,对吗?有没有办法解决这个问题,以便在更新时间戳单元格时调用宏


    老实说,我现在不会用这样的
    来标记时间。。。数据是如何导入的?如果您正在查找公式重新计算时触发的事件,则需要
    工作表\u Calculate
    。@Big我正在使用“从Web导入数据”功能用数据填充一个单独的工作表,然后将其镜像到最终显示表。正如您现在提到的,它是易变的,因此将每次工作簿中任何位置的单元格更改时都会重新计算。即使您捕获了正确的事件,例如calculate,也很可能最终会出现一个无限循环。如果您的代码正在下载数据,那么为什么不在所有下载部分完成后启动FilterSort。老实说,我现在不会使用这样的
    来设置时间戳。。。数据是如何导入的?如果您正在查找公式重新计算时触发的事件,则需要
    工作表\u Calculate
    。@Big我正在使用“从Web导入数据”功能用数据填充一个单独的工作表,然后将其镜像到最终显示表。正如您现在提到的,它是易变的,因此将每次工作簿中任何位置的单元格更改时都会重新计算。即使您捕获了正确的事件,例如calculate,也很可能最终会出现无限循环。如果您的代码正在下载数据,那么为什么不在所有下载部分完成后触发FilterSort呢。