Microsoft Access VBA - SQLを使ってデータを集計する方法

◆Commandオブジェクト、SQL集合関数
 SQLでは、SQL集合関数を使って集計をすることができます。
合計は「Sum()」、平均は「Avg()」、レコードの個数は「Count()」、最大値は「Max()」、最小値は「Min()」によって求められます。

◆Sample

次の例は、テーブル「商品」の「単価」の平均値を求めます。

Private Sub cmdSQL集合関数_Click()
   Dim cn   As ADODB.Connection
   Dim rs   As ADODB.Recordset
   Dim cm   As ADODB.Command
   Dim msg  As Integer

   ' Commandオブジェクト変数[cn]に、カレントプロジェクトを代入する
   Set cn = Application.CurrentProject.Connection
   ' Commandオブジェクト変数[cm]にコマンドを代入する
   Set cm = New ADODB.Command
   cm.ActiveConnection = cn
   cm.CommandText = "SELECT Avg(単価) as 単価の平均 FROM 商品;"
   ' SELECTステートメントをレコードセットで開く
   Set rs = New ADODB.Recordset
   Set rs = cm.Execute
   ' 結果をメッセージボックスに表示する
   msg = MsgBox("単価の平均は、" & rs.GetString & "円です。", , rs.Source)

   ' 接続を終了する
   rs.Close: Set rs = Nothing
   cn.Close: Set cn = Nothing

End Sub
◆実行結果

実行結果

▼ページトップに戻る