1. ホーム
  2. excel

[解決済み] Excelでミリ秒を表示する

2022-07-10 17:47:36

質問

Excelのマクロでミリ秒を表示しようとしています。 ミリ秒単位のタイムスタンプである整数の列があり(例えば28095200は7時48分15秒200)、その横に新しい列を作って、実行平均を取り、その時刻を hh:mm:ss.000 形式で表示します。

 Dim Cel As Range
 Set Cel = Range("B1")
 temp = Application.Average(Range("A1:A2")) / 1000
 ms = Round(temp - Int(temp), 2) * 1000
 Cel.Value = Strings.Format((temp / 60 / 60 / 24), "hh:mm:ss") _
                & "." & Strings.Format(ms, "#000")

これは、セルに "mm:ss.0" を表示するだけです。 しかし、セルをクリックすると、数式バーに "hh:mm:ss" が表示されます。 なぜ時間が表示されないのでしょうか?どうすれば、時間、分、秒、ミリ秒を表示できるのでしょうか?

どのように解決するのですか?

セル上で右クリック B1 を選択し セルの書式設定 . で カスタム というラベルの付いたテキストボックスに、次のように入力します。 タイプ :

[h]:mm:ss.000 

これをコードで設定するには、次のようにします。

Range("A1").NumberFormat = "[h]:mm:ss.000"

これで、探しているものが得られるはずです。

注: 特殊な書式のフィールドでは、書式付きテキストの内容全体を表示するのに十分な幅の列が必要になることがよくあります。 そうでない場合、テキストは次のように表示されます。 ###### .