excel功能区选择“公式”项,单击“计算”下拉选择“手动计算”,保存后,需要按“F9”才会重新计算,可以缓解这个问题,如图:
假设日期单元格为C2。
手动办法(估计你不喜欢):
选中C2,同时按Ctrl和;键;
自动的办法得用宏:
同时按Alt和F11进入宏界面,在左上窗口找到本工作簿中的ThisWorkbook,双击它,在右边粘贴如下代码:
Sub xxx()
Range("C2") = Range("C2")
End Sub
Private Sub yyy()
Range("C2") = "=today()"
End Sub
回到Excel,可以实现如下功能:
存盘时,自动把C2的公式变为数值;重新打开时,自动把C2的公式设为 =TODAY()
Range("A1").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
将NOW函数换成固定值,类似如下的公式
=IF(B8<>"",DATEVALUE("2014-11-2"),"")
NOW()函数本身就是易失型函数,这是函数本身物质决定的,用函数没什么办法。
想解决这个问题只能用VBA了,用事件可以做到的。