Excel,当其他单元格更改值或字符串时,停止更新NOW()

时间:2018-01-22 18:23:33

标签: excel vba excel-vba excel-formula

我有一排excel 开始时间,结束时间,持续时间和状态 enter image description here

enter image description here

使用NOW()函数excel计算结束时间。我希望这是停止更新价值。如果行中的状态单元格更改为“停止运行”。 此Stop正在手动完成。

2 个答案:

答案 0 :(得分:2)

此问题的可能解决方案是使用带有数据验证的下拉列表。 (这可以在没有VBA的情况下完成。)

即使您从下拉列表中选择了易失性值,数据验证下拉列表也始终是非易失性的。

您可以用来应用于电子表格的简单示例:

假设单元格A1包含公式= NOW(),并且通过以下方式设置了单元格B1并进行了数据验证:

enter image description here

现在,小区B1会拍摄一张"快照"每当您从下拉列表中选择唯一可用选项时NOW()NOW(),它将无限期地保留该值,直到您从下拉列表中重新选择。

enter image description here

任何需要$B$1的单元格都可以只使用NOW(),这基本上只是^,但它会被及时冻结,直到您再次从下拉列表中重新选择。

这是将易失性单元格转换为非易失性单元格(不使用VBA)的偷偷摸摸的方法。

答案 1 :(得分:0)

如果你想使用vba,Range(“A1”)。Value = Now()本质上是Now公式,只有在触发宏时才会运行。

当然,使用您需要日期的任何单元格切换范围(“A1”)。没有看到您的代码,我无法提供任何建议。我个人使用偏移来选择粘贴位置。