ステータスバーにプログレスバーを表示する : Access

長い処理を行う場合に、進行状況をユーザーに知らせる為のプログレスバーを下のステータスバーに表示します。

プログレスバーの表示は下記のコマンドを使用します。
  • SysCmd acSysCmdInitMeter : 初期化します。
  • SysCmd acSysCmdUpdateMeter : 指定した値にセットします
  • SysCmd acSysCmdRemoveMeter : 終了します。



BackHome BackTips Backメニュー

■ 実行フォーム
[実行]ボタンをクリックすると、ステータスバーに「実行中・・・」と表示され、プログレスバーが開始します。

途中画面です。

終了するとプログレスバーは消去されます。

■ Access VBA 実行コード例
ここでは長い処理の代わりに、一秒タイマーを使用しています。

Option Compare Database
Option Explicit

'時間の掛かる処理を実行
Private Sub 処理()
    Dim stimer As Single
    Dim lval As Long
        '1秒待ち
    lval = 1
    '開始時間
    stimer = Timer
    Do Until Timer > stimer + lval
        DoEvents
    Loop
End Sub

Private Sub コマンド7_Click()
    Dim i As Long
    '砂時計のマウスポインタ
    DoCmd.Hourglass True
    'ステータスバーの初期値
    SysCmd acSysCmdInitMeter, "実行中・・・", 10
    '処理内容を入力
    For i = 1 To 10
        'ステータスバーの値をセット
        SysCmd acSysCmdUpdateMeter, i
        Call 処理
    Next
    'ステータスバーの終了処理
    SysCmd acSysCmdRemoveMeter
    'マウスポインタを戻す
    DoCmd.Hourglass False

    MsgBox "処理を終了しました"
End Sub


BackHome BackTips Backメニュー

Copyright(C) FeedSoft