エクセルVBAからアクセスへ
Set con = New ADOdb.Connection
con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ACCESSファイル名
Set Rs = New ADOdb.Recordset
Rs.Open テーブル名, con, adOpenKeyset, adLockOptimistic
Debug.Print Rs.RecordCount
Set Rs = Nothing
Set con = Nothing
とエクセルVBAにコードを記述していますが思いどおりにいきません。
Debug.Print Rs.RecordCount
しかわからなく
これだとレコードの数しか数えられませんでした。
テーブルのフィールド「A」には「0000」が複数あります。
これを数えるにはどうすればいいのでしょうか?
もっといいやり方があれば教えてくださいませ。
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
惜しいです、もうひとひねり。
Rs.Open テーブル名, con, adOpenKeyset, adLockOptimistic
の、テーブル名のところを
Rs.Open "SELECT * FROM テーブル名 WHERE A='0000'", con, adOpenKeyset, adLockOptimistic
と、変えてあげれば、RecordCountでレコード数が取得できます。
""の中は、「テーブル名のA項目が'0000'のものを抽出する」という意味のSQL文です。
参考までに・・・↓
------------------------------------------------------------
A1さんのCOUNT関数を使ったSQLを使うとこうなります。
Set con = New ADOdb.Connection
con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ACCESSファイル名
Set Rs = New ADOdb.Recordset
Rs.Open "SELECT COUNT(*) AS CNT FROM テーブル名 WHERE フィールドA = '0000'", con, adOpenKeyset, adLockOptimistic
Debug.Print Rs!CNT ←これが件数!
Set Rs = Nothing
Set con = Nothing
と、なります。
No.1
- 回答日時:
以下を参考にしてください。
http://dell-support.okwave.jp/qa4357176.html
Dim Sql As String
Dim wCnt As Integer
'
Call Db接続
'
Sql = "SELECT COUNT(*) AS CNT FROM テーブル名 WHERE フィールドA = '0000'"
Set ADRS = ADCN.Execute(Sql)
wCnt = ADRS.Fields("CNT") '←件数
ADRS.Close
'
Call Db切断
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- Visual Basic(VBA) データベースから絞り込んでデータを読み込み 1 2023/02/21 19:51
- Access(アクセス) access,vbaでフォルダ内のファイルをテーブルにインポート、ファイル名もフィールドに追加したい 1 2022/08/31 11:11
- Access(アクセス) Access VBA を利用して、フォルダ内のファイルの名称を変更したい 1 2023/08/03 08:27
- Visual Basic(VBA) ExcelからAccessのテーブルに書き込む時に時間がかかる 1 2022/10/14 20:38
- Access(アクセス) チェックボックスにチェックが入った後の挙動 1 2022/08/21 12:39
- Access(アクセス) Accessのクエリの結果を、既存のエクセルに追加したい 2 2022/07/31 22:44
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- Access(アクセス) DoCmd.SearchForRecord が動かない時の解決方法 3 2022/07/22 15:31
- Visual Basic(VBA) VBAが止まります。 2 2022/09/02 14:02
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
2つのテーブルに共通するレコ...
-
ACCESSユニオンクエリから新テ...
-
クエリで同一テーブルの複数回...
-
ACCESS テーブルを見比...
-
Accessのリンクされたテーブル...
-
最新日のデータのみ抽出するク...
-
テーブルに表示されているもの...
-
access2000・・テーブルをデー...
-
Accessでリストの並び順を変更...
-
access vbaにてテンポラリーテ...
-
accessについて(超初心者です)
-
AccessでのリンクテーブルとADO...
-
アクセス2016 チェックボックス...
-
アクセス 部分一致の抽出
-
ACCESSで出欠リストを管理する
-
Accessでリンクテーブルからロ...
-
Accessのテーブルで、リンク?...
-
ACCESSでリンクテーブルのデー...
-
Accessで表計算のMatch関数のよ...
-
AccessのフィールドにIPアドレ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
2つのテーブルに共通するレコ...
-
最新日のデータのみ抽出するク...
-
Acccessで2つのテーブルから1...
-
テーブルに表示されているもの...
-
Accessでリストの並び順を変更...
-
Accessのリンクされたテーブル...
-
クエリで同一テーブルの複数回...
-
access vbaにてテンポラリーテ...
-
Accessのテーブルで、リンク?...
-
ACCESS テーブルを見比...
-
ACCESSユニオンクエリから新テ...
-
accessのテーブルを閉じたとき...
-
アクセス2016 チェックボックス...
-
アクセス 部分一致の抽出
-
Accessで使用しているリンクテ...
-
ACCESSのODBCリンクテーブルの...
-
アクセス2000でのリンク先...
-
Microsoft Access 「Form」のボ...
-
ACCESSでリンクテーブルのデー...
-
access2000・・テーブルをデー...
おすすめ情報