返回列表 上一主題 發帖

[發問] VBA計算執行時間顯示為x分x秒

[發問] VBA計算執行時間顯示為x分x秒

請問網大們,以下是我在網路上找到可以計算程式執行運算時間的程式碼但只能顯示秒數,該如何顯示為x分x秒呢?
例如:4.25448秒 希望呈現為 0分4秒
           69.54254秒 希望呈現為 1分9秒
-------------------------------------------------------
dim t0
t0=timer
xxxxxxxxxxxxx(程式碼)
msgbox "執行時間: " & timer-t0 & " 秒"
-------------------------------------------------------
*宅女一枚無誤*

回復 1# msmplay

試試看
dim cc as date, m%, s%
cc = cdate((timer-t0)/86400)
m = Minute(cc)
s = second(cc)
msgbox "執行時間: " & m & " 分 " &  s & " 秒"

TOP

回復 1# msmplay


    dim m%,s%
s=int(timer-t0)
m=s\60
s=s-m*60
msgbox "執行時間: " & m & " 分 " &  s & " 秒"

TOP

回復 1# msmplay

"\" 整數除 取整數商
"mod" 除法取整數餘數

     dim s%
s=int(timer-t0)
msgbox "執行時間: " & s\60 & " 分 " &  s mod 60 & " 秒"

TOP

回復 4# Scott090

S大~~~非常感謝幫忙,不過以上3種方式我今天之下都是顯示為0分0秒
我是win7 office2007版本,可以再請教一下是哪裡的問題ㄇ
*宅女一枚無誤*

TOP

回復 4# Scott090

S大~補充一下,我是用以下3段程式碼測試的dim cc as date, m%, s%
dim t0
t0=timer
cc = cdate((timer-t0)/86400)
m = Minute(cc)
s = second(cc)
msgbox "執行時間: " & m & " 分 " &  s & " 秒"



dim t0
dim m%,s%
t0=timer
s=int(timer-t0)
m=s\60
s=s-m*60
xxxxxxxxxxxxx(程式碼)
msgbox "執行時間: " & m & " 分 " &  s & " 秒"



dim s%
dim t0
t0=timer
s=int(timer-t0)
msgbox "執行時間: " & s\60 & " 分 " &  s mod 60 & " 秒"
*宅女一枚無誤*

TOP

t0 = Timer

'========== your code begin
................
'========== your code end

t0 = Timer - t0

msgbox t0 \ 60 & "分  " & (t0 - t0 \ 60 * 60) & "秒"

TOP

回復 7# jackyq


   j大~~~~感謝,但測試ㄧ程式跑完結果為:0分4.1953125秒。秒數似乎還是沒辦法不要有小數點
*宅女一枚無誤*

TOP

回復 6# msmplay


    就像 7樓一樣,把我給的程式碼片段插進要執行的程式碼內 試試看
sub test()
   dim s%
   dim t0
    t0=timer

   '要執行的程式  
   ' ================
    xxxxxxxxxxxxxx
   '=================

    s=int(timer-t0)
    msgbox "執行時間: " & s\60 & " 分 " &  s mod 60 & " 秒"

end sub

TOP

+ Round 試看看

MsgBox t0 \ 60 & "分  " & Round((t0 - t0 \ 60 * 60), 0) & "秒"

TOP

        靜思自在 : 要比誰更受誰.不要比誰更怕誰。
返回列表 上一主題