2009年7月11日土曜日

データの個数と合計を同時に表示@Excel VBA

 Excel 2007では、ステータス・バーにオートカルクを複数同時に表示できますが、Excel 2003以前では、一つしか表示できません。
 なので、同時に表示するマクロを作ってみました。
 PERSONAL.XLSのThisWorkbookに以下のコードを書きます。
Private WithEvents xlApp As Application

Private Sub Workbook_Open()
    Set xlApp = Application
End Sub

Private Sub xlApp_SheetSelectionChange( _
                ByVal Sh As Object, _
                ByVal Target As Range _
                )

    On Error GoTo ErrProc:
    Set wf = WorksheetFunction
    xlApp.StatusBar = _
            " ■合計=" & wf.Subtotal(9, Target) & _
            " ■データの個数=" & wf.Subtotal(3, Target)
    Exit Sub

ErrProc:
    Set e = Err
    xlApp.StatusBar = _
            " ■" & e.Description & _
            " ■エラー番号:" & e.Number
End Sub
 上記は、データの個数と合計を同時に表示するコードですが、WorksheetFunction.Subtotal()の引数を変えてやれば、平均等も表示できます。
 でも、平均を表示させたらちょっと重かったです。

0 件のコメント:

コメントを投稿