スポンサーリンク

2009-08-21

5000レコードを表示するのに必要な時間を計測する Step15(番外)

社員マスターテーブルのデータをシートに表示させるのに、あまり時間が掛かりすぎると使いづらくなります。
そこでダミーレコードを5000件用意し、時間計測してみます。
5000件であれば、個人利用でも、ちょっとした業務用でも十分かと思います。

■ 実行結果
5000件を表示させるのに、3437ミリ秒(3.4秒)でした。
これぐらいですと十分に使えそうです。
この方法でこれからも進めていきたいと思います。


■データベースからシートに表示させた結果


■実行コード

'Windowsが起動してからの経過時間
APIPrivate Declare Function GetTickCount Lib "kernel32" () As Long
'データベースから社員マスターのデータをシートに表示
Private Sub ExSyainToSheet()
Dim rs As Recordset
Dim lrow As Long
Dim st As Long
st = GetTickCount
'表示エリアのデータをクリア
Sheets("社員マスター").Range("B6:F65536").ClearContents
'自社情報テーブルを開き、テキストボックスに表示する
Set rs = tDbHanbai.OpenRecordset("M_社員マスター", dbOpenDynaset)
lrow = 6
Do While Not rs.EOF
'データを読みセルに表示
Sheets("社員マスター").Cells(lrow, 2) = rs("社員ID")
Sheets("社員マスター").Cells(lrow, 3) = rs("氏名")
Sheets("社員マスター").Cells(lrow, 4) = rs("フリガナ")
Sheets("社員マスター").Cells(lrow, 5) = rs("所属")
Sheets("社員マスター").Cells(lrow, 6) = rs("メール")
'次のレコード
rs.MoveNext
lrow = lrow + 1
Loop Set rs = Nothing
MsgBox GetTickCount - st
End Sub