Excel-有条件地用日期填充单元格,但填充后保持静态

Excel-有条件地用日期填充单元格,但填充后保持静态,excel,date,formula,Excel,Date,Formula,当用户在另一个单元格中输入数据时,我试图用今天的日期填充单元格。这很好,但我的问题是日期“不稳定”,这意味着每次打开电子表格后,它都会更新到今天的日期。我最初使用的是=TODAY(),但在第二天打开电子表格时发现了问题,我读到=TODAY()是一个易失性命令。我尝试将其更改为=NOW(),但今天再次打开电子表格后,同样的事情发生了 我知道有一些按键可以将可变单元格转换为静态单元格,但我真的需要一些能够自动完成此操作的工具,而不需要任何人执行额外的步骤。最好不要VBA 当前单元格中的公式为IF(B

当用户在另一个单元格中输入数据时,我试图用今天的日期填充单元格。这很好,但我的问题是日期“不稳定”,这意味着每次打开电子表格后,它都会更新到今天的日期。我最初使用的是
=TODAY()
,但在第二天打开电子表格时发现了问题,我读到
=TODAY()
是一个易失性命令。我尝试将其更改为
=NOW()
,但今天再次打开电子表格后,同样的事情发生了

我知道有一些按键可以将可变单元格转换为静态单元格,但我真的需要一些能够自动完成此操作的工具,而不需要任何人执行额外的步骤。最好不要VBA

当前单元格中的公式为
IF(B3=“”,“”,NOW())
。有没有办法做到这一点?

可以通过键盘快捷键获得静态日期(今天)

CTRL+;(分号)

这将是快速的,尽管不是自动的

正如其他人所提到的,VBA可能是一条出路,因为出于许多原因,全局禁用自动计算远远不是最佳选择

代码可以从这里复制(所需的VBA知识很少):

使用键盘快捷键可以获得静态日期(今天)

CTRL+;(分号)

这将是快速的,尽管不是自动的

正如其他人所提到的,VBA可能是一条出路,因为出于许多原因,全局禁用自动计算远远不是最佳选择

代码可以从这里复制(所需的VBA知识很少):

AFAIK如果没有VBA,这是不可能的。公式将始终重新计算,并且它们不能写入另一个单元格。理论上可以禁用重新计算,但这将是全局的。AFAIK如果没有VBA,这是不可能的。公式将始终重新计算,并且它们不能写入另一个单元格。理论上可以禁用重新计算,但这是全局性的。因为VBA非常容易使用,并且适合我的需要,所以我将接受这个答案。非常感谢。因为VBA非常容易使用,并且适合我的需要,所以我将接受这个答案。非常感谢。