Excel技巧之在长时间运算中使用友好提示

  • 来源: 学赛网 作者: 若水   2008-04-23/14:53
  • 如果某段VBA 代码需要较长的执行时间,为了不让使用者在不明就里的状态下等待程序运行,甚至认为Excel 死机,VBA 开发人员应该使用友好的提示,用于告知使用者当前的状况。
        有许多种方法能够在程序中达到友好提示的效果,例如在特定工作表中插入平时不可见的包含提示信息的自定义形状,并在程序开始运行时激活它;或者专门制作一个窗体,并放上进度条。但是,越美观的友好提示,其本身也会占用越多系统资源,并导致程序的运行时间更长。
        最简单实用的友好提示方法是使用Excel 的状态栏,下面的代码利用一段无意义的单元格填充代码来演示了通过Excel 的状态栏向使用者进行信息传达的效果。
        Sub ShowStatusBar()
        Const WaitMessage = "程序正在计算中,请稍候..."
        Dim k As Long
        '更改系统状态条的显示
        Application.StatusBar = WaitMessage
        '空循环
        For k = 1 To 60000
        ActiveSheet.Cells(k, 1).Value = k * 4 / 8 * 2 + 5 - 3 - 2
        Next
        '清除A 列的内容
        Columns("A:A").ClearContents
        '恢复系统状态条
        Application.StatusBar = False
        End Sub
        当程序开始运行时,Application.StatusBar = WaitMessage 会让Excel 状态栏显示预先定义好的文字内容,如图355-1 所示。
        而当程序的主要功能完成后,Application.StatusBar = False 将状态栏恢复到默认状态, 图355-2 所示。


    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多