我正在构建一个每天刷新的新仪表板。仪表板包含当月数据和上月数据。但是,我需要在日期方面尝试一些不同的方案,以确保月份转换正常进行。例如,我想知道在月份的第一天和月份的第二天有不同条件(例如第一天是周末或节假日等)的情况下我的公式会做什么,而我不会有任何数据,这会导致错误。
我尝试修正公式,但是公式涉及的太多且彼此相关。另外,数据也从SQL Server提取,我也在此处使用GETDATE()。
例如,我的一个公式显示
=YEAR(TODAY()-1)&IF(MONTH(TODAY()-1)<10,0&MONTH(TODAY()-1),MONTH(TODAY()-1))
获取年份和月份(例如,2019年4月的201904)。这是内置了Today()的众多公式之一
总而言之,我想知道是否可以更改Excel的读取日期。例如,我有一个带有= TODAY()的公式-我希望该公式返回我设置的其他日期,而不是今天的实际日期。
答案 0 :(得分:0)
首先将此用户定义的函数放在标准模块中
Public Function todaz() As Date
todaz = Evaluate("=today()") + 12
End Function
然后在工作表中,替换以下所有实例:
Today()
具有:
todaz()
您可以将用户定义的功能更改为所需的任何日期偏移量。
完成测试后,将所有todaz()
改回Today()
。
答案 1 :(得分:0)
这是非VBA版本:
在工作表中有一个仅放置=Today().
的单元格,用对此单元格的引用替换Today()的所有其他实例。为了进行测试,请将Today()
替换为您喜欢的任何日期,并在完成后将Today()
重新放入。
此版本和Gary的Student版本都具有较少波动的优点-也就是说,它们将运行得更快,因为Today()是在出现的每个位置都会频繁重新计算的函数之一-在您的情况下听起来很喜欢