アプリ版:「スタンプのみでお礼する」機能のリリースについて

プログラムで処理1~3までの流れがある場合に、処理1~処理3それぞれの処理時間(秒)を求めたいです。
<例>
処理1
処理2
処理3

処理1の前の現在時刻を求めておき、処理2に入ったときの現在時刻から処理1の前の現在時刻を引けば処理時間(秒)求めることができると思うのですが、プログラムでどのように実装すればよいかわかりません。

現在時刻を求めるプログラムは、

Public Function GetTimeLong() As Long
'処理時間
Dim stTime As SYSTEMTIME
'初期化
GetTimeLong = 0
InitSystemTime stTime
'取得して変換
If GetTime(stTime) = True Then
GetTimeLong = stTime.wMilliseconds ' ミリ秒
GetTimeLong = GetTimeLong + stTime.wSecond * 1000& ' 秒
GetTimeLong = GetTimeLong + stTime.wMinute * 1000& * 60& '分
End If
End Function

で求めることができると思います。

また、処理1~3までの得られた処理時間を、

処理1 処理2 処理3
○秒  ○秒  ○秒

とCSV形式ファイルで保存したい場合、どのようなプログラムを書けば実装できるのでしょうか?

どなたかご教授をして頂ければ助かります。
よろしくお願い致します。

A 回答 (1件)

処理数が少ないなら、


ELTime0 = GetTimeLong()
処理1
ELTime1 = GetTimeLong()
処理2
ELTime2 = GetTimeLong()
処理3
ELTime3 = GetTimeLong()
のような形で必要データをそろえて計算してからCSVに書き出すことになると思います。

CSVの書き出しについては、検索するとたくさん出てきます。
http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub0 …
http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd …
などなど

処理がいっぱいあって、書き出しながら処理を行いたいと考えているのなら、
処理1 処理2 処理3
○秒  ○秒  ○秒
のように書き出すのはあまり論理的ではありません。
処理1 ○秒 
処理2 ○秒
処理3 ○秒
・・・・
としたほうがよいでしょう。 また、書き出すのにも時間がかかりますので、
処理ごとに書き出すなら、毎回処理前に時間を取り直す必要があります。
    • good
    • 0
この回答へのお礼

質問に対し、ご回答頂きありがとうございます。

おかげ様で、処理時間の取得とCSVファイルでの出力をすることができました。

ありがとうございました。また、機会がありましたらよろしくお願い致します。

お礼日時:2007/05/20 21:52

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!