excel 自动设定日期,且之后日期不变?

我做了一个日报表,嫌每天修改日期麻烦,就在表头自动设定日期,这么设的:=text(today(),“yyyy”&"年"&“mm”&“月”&“dd”&“日”),但是,我发现打开之前的报表,日期会变为当前日期,这下不好了,请问怎么设定日期,日期就是固定的,不再改变?
别用vba

解决excel 自动设定日期,且之后日期不变的步骤如下:

1.首先选中A3,输入公式“=IF(B3="","",IF(A3="",NOW(),A3))”,A3作为自动生成输入数据的地址,B3为你输入数据或者编辑的地址。

2.选择【档案】选项卡下面的【选项】。

3.在打开的对话框中选择【公式】,勾选右边的【启用反复运算】(有的版本这里是【迭代运算】),然后点击右下角的确定关闭窗口。

4.回到excel表格,试试在B列在不同的时间输入销量数据,在A列自动生成了输入数据的时间,当你过几分钟回去修改刚输入的数据的时候,生成的时间不会因为修改数据而变化。这样就解决了excel 自动设定日期,且之后日期不变的问题了。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-07-27
  因为函数today是取得当前日期,所以要保持是输入数据的日期不变,只能是下面三种方法:
  1. 直接输入当前日期,快捷键是Ctrl+;
  2. 用VBA
  3. 用today函数也可以,但得有点技巧,就是要用到Excel的迭代循环,并用另一个单元格来触发。首先在选项的高级中勾选“启用迭代计算”,再你的工作表中除了日期肯定是要输入其它数据的。比如你要在C1中显示输入数据的日期,而A2以下是序号,假设工作表只要有数据A2肯定不会为空,就可以A2来做触发的单元格。在C1中输入如下公式:
  =IF(A2="","",IF(C1="",TODAY(),C1))
  公式中,首先,因为A2没有数据,所以取空值,当A2输入序号1时,条件不成立,但此时C1="",第2个IF条件成立,函数TODAY()取得当前日期,而到第2天及以后,因为2个IF条件都不成立,C1按第2个IF不成立时取值,取取得C1——即仍是原值不变。因为公式中要取得单元格本身,这就是Excel的循环引用,所以要勾选“启用迭代计算”。
  PS:这里的日期完全可以在单元格格式中设置,选择一个你喜欢的日期格式,没必要多用一个text函数。而即是使用text函数,也没必要你那么复杂。你的公式用如下方式即可:
  =TEXT(TODAY(),"yyyy年mm月dd日")追问

高手!

本回答被提问者采纳
第2个回答  2015-07-27
日期公式可以是:=TEXT(TODAY(),""YYYY年MM月DD日")
当然,以上是题外话,效果一样。
想要自动生成,而且日期不变,只能用VBA,也就是宏代码。本回答被网友采纳
第3个回答  2015-07-27
直接输入日期,是不会变的
第4个回答  2020-12-23

不改变原始表格数据,打印时自动添加打印日期。

相似回答