Excelを使用して、さまざまなイベントの経過時間を記録することをお勧めします。これに取り組むには、ネイティブ、Excel内、またはマクロの2つの方法があります。

マクロを使用したくない場合は、タイミングに合わせて3つの列を簡単に設定できます。最初の列は開始時刻、2番目の列は終了時刻、3番目の列は経過時間(終了時刻から開始時刻を引く式を使用して計算)を記録するために使用できます。時間を記録するには、開始時間列または終了時間列のいずれかでセルを選択し、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を使用する必要がない短いイベントを記録する場合に非常にうまく機能します。より長いイベントを記録する必要がある場合は、別のアプローチが必要です。次のマクロは連携して機能します。最初のものは開始時間を記録します。それがすべてです。 2つ目は、その記録された時間を使用して、現在選択されているセルに配置される経過時間を計算します。

Global vStTime

Sub StartTiming()

vStTime = Time End Sub

Sub EndTiming()

ActiveCell.Value = Time - vStTime End Sub

これらの2つのマクロを、クイックアクセスツールバーまたはタイミングプロセスをそれぞれ開始および停止する異なるツールバーボタンに簡単に割り当てることができます。

注:

このページ(または_ExcelTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。

_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。

このヒント(11193)は、Microsoft Excel 2007、2010、2013、2016、2019、およびOffice 365のExcelに適用されます。Excelの古いメニューインターフェイス用のこのヒントのバージョンは、次の場所にあります。