Excel如何记忆历史数据

如何让红色框在每天2点以后自动读取左边单元格数据,并保留至第二天2点前。话句话说就是记忆左边的数据,同时也随之这更新。

两种方法可行,各有优缺点:

    公式法D15:

    =IF(AND(HOUR(NOW())=2,MINUTE(NOW())>=0,MINUTE(NOW())<=1),D14,D15)

    优点:简单,容易实现

    缺点:

    第一,你需要设置勾选循环引用,设置次数为1次;

    第二,由于无法使用易失性函数,所以单元格无法自动更新,你需要在这一分钟的时间段里执行能引发工作表自动重算的动作。

    VBA法:

    创建VBA使用Application对象的OnTime方法来让Excel在指定时间运行指定的过程,在过程中更新D15。

    优点:基本上能保证数据的定时更新。

    缺点:使用VBA,需要一定的基础。

两种方法都要求工作簿在需要更新时是打开的。

追问

不好意思,我太笨,我没办法勾选循环引用,还有我要D14在第二天2点以后显示的是C14的内容,可能我没有表述明白,我不知道什么原因用了楼上大神的公式后结果总是为0,会不会因为C14的值=D14+J14原因影响计算啊?

追答

晕,你C14还等于D14+J14………………没得救。。。啊,不能用公式了

追问

那咋办?我希望他们自动计算啊,由于某些原因小于10美金的不能支付所以需要留存,然后被再计算。有什么办法实现这一思路吗?

追答

只有用VBA定时将C14的内容以纯数据的方式写入D14,并在每次写入D14时,将J14或J14所依赖的数据清零(因为J14也可能是公式计算来的)

温馨提示:答案为网友推荐,仅供参考