您可能要使用Excel记录不同事件的经过时间。可以采用两种方法进行处理:在Excel中是本机的,或者在宏中。

如果您不想使用宏,则可以轻松地为时序设置三列。第一列可以用来记录开始时间,第二列可以用来记录结束时间,然后第三列可以用来记录经过的时间(通过使用从结束时间中减去开始时间的公式来计算)。为了记录时间,您可以在开始时间或结束时间列中选择一个单元格,然后按Ctrl + Shift + :(冒号)。

Excel在该单元格中输入当前时间。

如果要使用仅返回经过时间的宏,则可以使用以下命令:

Public Sub TimeIt()

Dim vStartTime As Date

vStartTime = Time     MsgBox Prompt:="Press the button to end the timing" & vbCrLf _       & "Timing started at " & Format(vStartTime, "hh:mm:ss"), _       Buttons:=vbOKOnly, _       Title:="Time Recording Macro"

ActiveCell.Value = Time - vStartTime End Sub

此宏记录一个开始时间(在vStartTime中),然后显示一个消息框。当您单击消息框按钮时,当前时间和开始时间之间的时差将存储在当前单元格中。 (您需要确保当前单元格使用一种时间格式进行格式化。)

上面的宏非常适合记录短期事件,在此期间您不需要使用Excel来执行其他任务。如果您需要记录更长的事件,则可以采用其他方法。以下宏协同工作。第一个记录开始时间;第二个记录开始时间。这就是全部。第二个使用该记录的时间来计算经过时间,该经过时间放置在当前选定的单元格中。

Global vStTime

Sub StartTiming()

vStTime = Time End Sub

Sub EndTiming()

ActiveCell.Value = Time - vStTime End Sub

您可以轻松地将这两个宏分配给快速访问工具栏或分别用于启动和停止计时过程的不同工具栏按钮。

注意:

如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(11193)适用于Microsoft Excel 2007、2010、2013、2016、2019和Office 365中的Excel。您可以在此处为Excel的较早菜单界面找到此技巧的版本: