- 締切済み
VB2005のについて
Accessにあるテーブルの合計を求めてVBに出力するにはどうしたらいいでしょうか? 教えてください。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- NOBNNN
- ベストアンサー率50% (93/186)
つまり VB2005 で MDB のデータを取り扱えればいいわけですよね こちらが 参考になると思います。 → http://www.microsoft.com/japan/msdn/archive/office/access/VBtips/dataaccess/default.aspx http://www.microsoft.com/japan/msdn/archive/office/access/VBtips/default.aspx クエリにて集計結果を得るには OleDataAdpter の SQL を編集しないとできません。 MSDN ライブラリ にて OleDataAdpter を調べればわかります。 ______________________________________<サンプル>___________________________________________________ Dim ret As Integer Dim strConn As String = My.Settings.QSO_LOGConnectionString '接続文字列 Dim oleConn As OleDb.OleDbConnection 'コネクション Dim myoledbCmd As New OleDb.OleDbCommand Dim strSQL As String 'SQL oleConn = New OleDb.OleDbConnection(strConn) strSQL = "Delete From TBL_交信記録 WHERE ID in(" & strID & ")" Try oleConn.Open() myoledbCmd.CommandText = strSQL myoledbCmd.Connection = oleConn ret = myoledbCmd.ExecuteNonQuery() oleConn.Close() Catch dbcx As OleDb.OleDbException F = MsgBox("ExecQery関数にてデータベース(" & strSQL & ")の実行に失敗しました。" & vbCrLf & _ "(詳細)" & vbCrLf & _ dbcx.Message, MsgBoxStyle.OkOnly, Me.Name) Catch except As System.Exception 'DB以外のエラー F = MsgBox("ExecQery関数にてデータベース(" & strSQL & ")の実行に失敗しました。" & vbCrLf & _ "(詳細)" & vbCrLf & _ except.Message, MsgBoxStyle.OkOnly, Me.Name) Finally oleConn.Close() End Try ____________________________________________________________________________________________________________________ 上記のサンプルは Delete のSQLを発行していますが これを 任意の集計用の SQLに置き換えればできます。 接続文字列はVB2005のプロジェクトのプロパティの設定に定義しておく必要があります。 設定 → Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\MDB\QSO_LOG.mdb