有没有办法让excel中的时间停止计数?

有没有办法让excel中的时间停止计数?,excel,excel-formula,Excel,Excel Formula,在我的excel工作表中,我有以下代码: =IF(ISERROR(MATCH(D2,'Sheet 2'!A:A,0)),"",NOW()) 这主要是检查D2中的值是否与表2中A:A列中的任何值匹配,然后使用NOW()填充单元格中的日期和时间 我的问题是日期和时间都在计算,因为我使用的是NOW()函数,而我需要的是日期,在某种程度上,可以拍摄日期快照或冻结日期。我正在创建的这个表就像一个日志,所以我需要将它放入单元格时的日期保持不变 非常感谢您提供的任何帮助。如果您将其粘贴到工作表后面的代码中

在我的excel工作表中,我有以下代码:

 =IF(ISERROR(MATCH(D2,'Sheet 2'!A:A,0)),"",NOW())
这主要是检查D2中的值是否与表2中A:A列中的任何值匹配,然后使用NOW()填充单元格中的日期和时间

我的问题是日期和时间都在计算,因为我使用的是NOW()函数,而我需要的是日期,在某种程度上,可以拍摄日期快照或冻结日期。我正在创建的这个表就像一个日志,所以我需要将它放入单元格时的日期保持不变


非常感谢您提供的任何帮助。

如果您将其粘贴到工作表后面的代码中(其中范围
单元格
是时间戳所在的列),您可以自动运行此功能:

Private子工作表\u更改(ByVal目标作为范围)
暗淡的关键单元格作为范围
'变量KeyCells包含将
'因为当它们被更改时会发出警报。
设置关键单元格=范围(“单元格”)
如果不是应用程序.Intersect(关键单元格,范围(目标地址))_
那就什么都不是了
如果范围(Target.Address).Value为“”,则
范围(目标地址)。复制
范围(Target.Address).PasteXlPasteVaues
如果结束
端接头

好的,所以我解决了这个问题,在我的VBA中,我有以下代码,它几乎在单击我的按钮时创建了一个日志文件,它在不同的单元格中获取各种信息,并将其填充到下一个定义的可用行中:

Sub copylog()
Dim LastRow As Long, ws As Worksheet
Dim wt As Worksheet

Set ws = Sheets("Create Log")
Set wt = Sheets("PDF Creation")
LastRow = ws.Range("A" & Rows.Count).End(xlUp).Row + 1
 ws.Range("A" & LastRow).Value = wt.Range("N11").Value
 ws.Range("B" & LastRow).Value = wt.Range("N12").Value
 ws.Range("C" & LastRow).Value = wt.Range("N13").Value
 ws.Range("D" & LastRow).Value = wt.Range("N14").Value
 ws.Range("E" & LastRow).Value = wt.Range("N15").Value
 ws.Range("F" & LastRow).Value = wt.Range("N16").Value
 ws.Range("G" & LastRow).Value = wt.Range("AT19").Value
 ws.Range("H" & LastRow).Value = wt.Range("AT21").Value
 ws.Range("I" & LastRow).Value = wt.Range("AT23").Value
 ws.Range("J" & LastRow).Value = wt.Range("AT25").Value
 ws.Range("K" & LastRow).Value = wt.Range("AT27").Value
 ws.Range("L" & LastRow).Value = wt.Range("A2").Value
 ws.Range("M" & LastRow).Value = Environ("Username")
 End Sub
上面的代码将填充下一行中的表格,例如,第一行:

 ws.Range("A" & LastRow).Value = wt.Range("N11").Value
这将采用在PDF创建工作表中填充N11的值,并填充创建日志工作表A列中的下一个可用行(使用复制和粘贴)

解决我的时间问题的线路是:

 ws.Range("L" & LastRow).Value = wt.Range("A2").Value

在单元格A2中,我有NOW()函数,按钮将其复制并粘贴到L列的下一个可用空间中(复制并粘贴为文本)。

尝试将
NOW()
替换为
TODAY()
,这将只给出日期,而不给出时间。@ShaiRado感谢您的回复,但这也会计算日期,我需要日期和时间来保持原样。你能复制并粘贴这个值吗?@TomSharpe我可以,但这会破坏在后台运行日志的目标。我基本上有一个按钮,可以将我工作表上的打印区域保存为PDF文件,我们从该工作表中保存了1000个PDF,因此我的目标是记录我们保存的每个PDF及其详细信息和创建日期和时间。感谢您的回复,我试图使用这个,但我无法让它工作,因为我不太擅长VBA,但下面我已经解决了我的问题
 ws.Range("L" & LastRow).Value = wt.Range("A2").Value