★ Subtotalメソッドを活用しよう!    サンプルDL


Subtotalメソッドを活用するといろんなことができてとても便利

 


 

私は、上の表のように果物の在庫リストを作りました。
ナンバー、品名、単価、数量、合計を表示しています。この表を使ってSubtotalメソッドの便利さを見てみたいと思います。

 Excelウィンドウの中のメニューバーにある[データ]メニュー → [集計] コマンド を使用すると、基準にするフィールド(列)単位で集計されてしまいます。今回は、通常のワークシート上で行う集計とは違った方法をご紹介します。
 

Sub 数値個数()

Dim test As Double

test = Application.WorksheetFunction.Subtotal(2, Columns(4))

Cells(2, 6).Value = test

End Sub

こんなコードを書いてみましたが、ポイントは次の1行だけです。見てみましょう。

     Application.WorksheetFunction.Subtotal(2, Columns(4))


と書きましたが、「 Applicationオブジェクト」は記述してもしなくてもOKです。とりあえず書きましたが、

     WorksheetFunction.Subtotal(2, Columns(4))

と書いても問題なく処理をしてくれます。

WorksheetFunctionプロパティ」はVisual Basic から呼び出すことができる Excel ワークシート関数を利用するときに使う容器のようなものです。

    WorksheetFunction.Subtotal ( 数値 , 範囲 )

基本構文みたいに覚えていますが、数値のところに1から11までの数値を入れます。
この数値が、前ページの集計する目的別の数値になります。
ですから、上のように「2」が入れば、数値の個数を集計することができます。

範囲のところでは、今回はColumns(列値)としましたが、Range("A2:C20")としても大丈夫ですよ。
では、次回は順番に数値を入れてみて、試してみましょう。


[前へ][トップ][次へ][サンプルファイルダウンロード]