0

重複の可能性:
VBA Excel:一度に1秒追加

時間値がカスタム00"00"の形式のExcelスプレッドシートがあります。この値から5分を引き、Excel VBAを使用して回答をhh:mm:ssとしてフォーマットします。全体を見渡してみましたが、答えが見つかりませんでした。いろいろな時間関数を使ってみましたが、運が悪かったです。私は新しいExcelVBAプログラマーです。任意の提案をいただければ幸いです。

4

2 に答える 2

2

セルが実際の日時値を保持している場合は、次のようになります。

Cells(r, c).Value = DateAdd("n", -5, Cells(r, c).Value)
Cells(r, c).NumberFormat = "hh:mm:ss"
于 2013-01-09T21:47:30.830 に答える
0

カスタム形式が何をするのかわかり00"00"ませんが、「...時間値のあるスプレッドシート...」と言っているので、基になるデータは日付/時刻のシリアル番号であると思います。

これが事実である場合、

Dim cl as Range
Set cl = Range("YourCellAddress")
cl = cl - 5# / 1440# ' subtract 5 minutes
cl.NumberFormat = "hh:mm:ss" ' format
于 2013-01-09T21:46:28.757 に答える