「StiLL」 デザイン情報224 StiLLコマンド-- 処理時間の連続計測
                             
  【テーマ】
作成したプログラムの処理時間を計測したいときはありませんか?今回は比較的容易に連続計測を行うことができる方法をご紹介いたします。
    【方法】
「セル値セット(BtSetValue)」のセル参照機能を使い、COUNTA関数で示すセル位置に時刻を出力することで連続的に計測します。
    【参考】
シートに出力する実行結果を加工して、「CSVデータ更新(BtTextWrite)」ボタンでLogファイルとして保存することも可能です。処理時間がかかっている場所を絞り込む(特定する)ことができます。
 
           
                             
■ 今回の内容                        
今回は、作成したプログラムのデータ取得や加工、またデータ登録などの処理時間を連続で計測する方法についてご紹介します。
※ボタン単独の処理時間を計測する方法については、下記バックナンバーをご参照ください。
【StiLLメールサービス バックナンバー】 「StiLL」 デザイン情報169 StiLLコマンド-- 処理時間の計測
下図のように(プログラム連続実行用ボタン)にリストされているボタンごとの処理時間を計測する手順をご説明します。
画面の領域
計測前のボタンリストのイメージ
■ 全体図                          
はじめに下図のように@計測時刻をセットするセル(I列)、A処理時間(経過時間)を計算するセル(J列)等を用意します。
本例では10回(ボタン10個)までの連続計測を想定しています。
セルI18に以下の式を入力して計測時刻をセットするセル位置を求めます。
 セルI18 ="Pシート1!I"&19+COUNTA(I19:I28)
または、=ADDRESS(19+COUNTA(I19:I28),9,4,1,"Pシート1")
 ※COUNTA関数で空白でないセルの個数を数え、セルI19 から順に I29 まで変化します。
Aの処理時間を計算するセルに、I列にセットされた計測時刻の差分を求める式を予め入力しておきます。
セルJ20 =MAX(I20-I19,0) ・・・ 計算結果がマイナスにならないようMAX関数で補正しています
セルJ21 =MAX(I21-I20,0)
・・・・・・・・・・・・・・・・・・・・・・
セルI29 =MAX(I29-I28,0)
なお、セルの表示形式は@Aとも、h:mm:ss とします。
また、F列に連番、G列に計測する処理ボタン名を実行順に入力することで実行結果の一覧となります。
■ ボタンの設定                        
今回使用するStiLLボタンを示します。(下図赤枠)
画面の領域
@セルデータクリア(BtCellClear)の設定例
  ・計測時刻の設定セル範囲(I列)をクリアします
   設定例:セルI19からI29を指定
画面の領域
Aセル値セット(BtSetValue)の設定例 ・・・ボタン見出し(時刻のセット)
  ・計測時刻を設定します
   設定例:(セルの値を参照)を選択して、計測時刻の出力セル位置を求める式が入力さているセルI18を指定
画面の領域
・セット値には時刻が取得できる「%NOW%」を指定します
上記@Aのボタンを全体図の(プログラム連続実行用ボタン)のリストに設定します。
   設定イメージ
流れの説明
  1.最初に(セルデータクリア)ボタンで計測時刻の範囲を初期化します。
  2.次に(時刻のセット)ボタンで計測開始時刻を記録します。                ・・・セルI19に出力
  3.処理(支店実績データ取得)ボタンを実行します。
  4.(時刻のセット)ボタンで、上記3.の終了と、次の5.の開始となる時刻を記録します。 ・・・セルI20に出力
  5.処理(本部実績データ取得)ボタンを実行します。
  6.(時刻のセット)ボタンで、上記5.の終了と、次の7.の開始となる時刻を記録します。 ・・・セルI21に出力
  7.処理(実績集計処理)ボタンを実行します。
  8.(時刻のセット)ボタンで、上記7.の終了時刻を記録します。               ・・・セルI22に出力
このように、ボタン連続実行ボタンのリストで計測したい場所に(時刻のセット)ボタンを設定するだけで
任意の範囲の処理時間を容易に計測することができます。また作成する(時刻のセット)ボタンは1つで済みます。
実行結果のイメージ
画面の領域
■ ご参考                          
1.シートに出力する実行結果を加工して、「CSVデータ更新(BtTextWrite)」ボタンでLogファイルとして保存することも可能です。
2.処理時間がかかっている場所を絞り込む(特定する)ことができます。
 ・親ボタンのリストの中で処理時間が大きいボタン連続実行ボタンのリストにも本例の(時刻のセット)ボタンを設定して計測します
 ・同様の手順で一番処理時間がかかる処理を特定することができます
(各ボタンの設定内容の詳細はStiLLヘルプをご確認ください)  
Copyright(C) アイエルアイ総合研究所 無断転載を禁じます