アプリケーションとしてのVBA Excel(エクセル) VBA の役立つ Tips の紹介

アプリケーションとしてのVBA

ステータスバーを使って進捗を表示させる

ステータスバーを使って進捗を表示させる


  実行時間を早くするために Display の表示を止めると、実行時間が長いマクロを
  組んだ場合、進捗が分からなくなります。

  やっぱりあとどのくらいで終了するのか知りたくなるのが人間の心理です。

  プログレスバーを ProgressBar Control を使用してフォームで表示させる方法もあり
  ますが、簡単にできる、ステータスバーを使って進捗を表示させる方法を説明します。


Sub test1()
    Dim i As Long
    
    For i = 1 To 10
        Application.StatusBar = i & "/10 の処理終了"
    Next

    'ステータスバーの文字列を既定値に戻すには、プロパティに 
    'False を設定します。
    Application.StatusBar = False
End Sub

  進捗表示を文字列で表現します。

  Application.StatusBar = "ここに文字列で進捗を表現します"

Sub test2()
    Dim i As Long
    
    For i = 1 To 10
       Application.StatusBar = String(i, "■") & String(10 - i, "□")
    Next


    Application.StatusBar = False
End Sub

  こうすれば、■■■□□□□□□□ こんな表示もできます。












Copy (C) 2005   アプリケーションとしてのVBA   All Rights Reserved.