Page 178 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 通常モードに戻る ┃ INDEX ┃ ≪前へ │ 次へ≫ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼クエリのレコードカウント 孔子 03/1/29(水) 10:28 ┗Re:クエリのレコードカウント イケガミ 03/1/29(水) 12:22 ┗Re:クエリのレコードカウント 孔子 03/1/29(水) 14:16 ┗Re:クエリのレコードカウント うますけ 03/1/29(水) 15:14 ┗Re:クエリのレコードカウント 孔子 03/1/29(水) 15:40 ┗Re:クエリのレコードカウント うますけ 03/1/29(水) 15:44 ┗Re:クエリのレコードカウント 孔子 03/1/29(水) 15:57 ┗Re:クエリのレコードカウント うますけ 03/1/29(水) 16:17 ┗Re:クエリのレコードカウント 孔子 03/1/29(水) 16:24 ┗Re:クエリのレコードカウント イケガミ 03/1/29(水) 16:34 ┣Re:クエリのレコードカウント 孔子 03/1/29(水) 16:43 ┗Re:クエリのレコードカウント 孔子 03/1/29(水) 17:06 ┗Re:クエリのレコードカウント イケガミ 03/1/29(水) 17:29 ┗Re:クエリのレコードカウント 孔子 03/1/30(木) 17:06 ─────────────────────────────────────── ■題名 : クエリのレコードカウント ■名前 : 孔子 <horms@excite.co.jp> ■日付 : 03/1/29(水) 10:28 -------------------------------------------------------------------------
初めて投稿させていただきます。 いきなり質問なのですが、アクセスVBAでイベントの中にクエリの結果のレコードカウントを取得するにはどうしたらよいのでしょうか? 分かりづらい質問になってしまいましたが、どなたかお教えいただけないでしょうか? よろしくお願いします。 ちなみにWindows2000のAccess2000です。 |
>アクセスVBAでイベントの中にクエリの結果のレコードカウントを >取得するにはどうしたらよいのでしょうか? VBA限定ではないのですが、DCount 関数を使えばいいかと。。 レコードセットを使っているのならば、RecordCount プロパティの方が いいでしょうけど。 |
> >VBA限定ではないのですが、DCount 関数を使えばいいかと。。 >レコードセットを使っているのならば、RecordCount プロパティの方が >いいでしょうけど。 レスありがとうございます。 申し訳ありません。質問の内容が間違っていたみたいです。m(__)m VBAを使用してクエリをレコードセットしたいのですが、 Dim Rset as RecordSet Set Rset = CurrentDb.OpenRecordset("クエリ1") MsgBox Rset.RecordCount このような感じでレコード数を表示したいのですが、 以下のエラーが表示されてしまい、困っております。 「パラメータが少なすぎます。1を指定してください。」 いったい何がいけないのでしょうか? ちなみにクエリ1は Select スケジュール.予定日 From スケジュール Where スケジュール.予定日 >= Cint(Mid([Forms]![フォーム1]![text],5,2)); となっております。 |
ども、うますけです。 > Set Rset = CurrentDb.OpenRecordset("クエリ1") > > MsgBox Rset.RecordCount > > このような感じでレコード数を表示したいのですが、 > 以下のエラーが表示されてしまい、困っております。 > 「パラメータが少なすぎます。1を指定してください。」 > いったい何がいけないのでしょうか? OpenRecordsetメソッドの第2引数typeを省略しているので、第1引数がクエリで ある事から自動的にダイナセットタイプのレコードセットになっています。 以下Helpの抜粋 ------------------------------------------------------------------------ ダイナセット タイプ、スナップショット タイプ、または前方スクロール タイ プの Recordset オブジェクトのレコード数は、すべてのレコードがアクセスさ れるまでは RecordCount プロパティを調べてもわかりません。 ------------------------------------------------------------------------ ということです。 > Select スケジュール.予定日 > From スケジュール > Where スケジュール.予定日 >= Cint(Mid([Forms]![フォーム1]![text],5,2)); 単にレコード数を知りたいなら -------------------------------------------------------------------------------- Dim strSQL As String strSQL = "Select Count(*) As カウント " _ "From スケジュール " _ "Where 予定日 >= " & CInt(Mid([Forms]![フォーム1]![text],5,2)) Set Rset = CurrentDb.OpenRecordset(strSQL) MsgBox Rset.Fields("カウント") -------------------------------------------------------------------------------- でOKだと思います。 |
レスありがとうございます。 > >単にレコード数を知りたいなら >-------------------------------------------------------------------------------- >Dim strSQL As String >strSQL = "Select Count(*) As カウント " _ > "From スケジュール " _ > "Where 予定日 >= " & CInt(Mid([Forms]![フォーム1]![text],5,2)) > >Set Rset = CurrentDb.OpenRecordset(strSQL) > >MsgBox Rset.Fields("カウント") >-------------------------------------------------------------------------------- > >でOKだと思います。 説明不足でした。SQLはレコード数とは別の結果を表示したいのです。 そのSQLの結果のレコード数を取得したいので、クエリとVBAは別で考えていただけたら幸いです。キーとなっているのは、クエリの結果のレコード数をVBAによって出力したいのです。 どうか無知な私にお力添えをお願い致します。 |
ども、うますけです。 > SQLはレコード数とは別の結果を表示したいのです。 > そのSQLの結果のレコード数を取得したいので、クエリとVBAは別で考えてい > ただけたら幸いです。キーとなっているのは、クエリの結果のレコード数を > VBAによって出力したいのです。 前回の投稿の前半部分は読みましたか? Helpは調べましたか? |
レスありがとうございます。 >Helpは調べましたか? すいません。今現在ヘルプが見れない状態にあります。 >前回の投稿の前半部分は読みましたか? OpenRecordsetメソッドを使用してレコード数を取得することは出来ないみたいですね。 申し訳ありません。ヘルプが見れないので、どのメソッドを使用していいのか分かりません。どうしたらいいでしょうか? |
ども、うますけです。 > >Helpは調べましたか? > > すいません。今現在ヘルプが見れない状態にあります。 > > >前回の投稿の前半部分は読みましたか? > OpenRecordsetメソッドを使用してレコード数を取得することは出来ないみたいですね。 > 申し訳ありません。ヘルプが見れないので、どのメソッドを使用していいのか分かりません。どうしたらいいでしょうか? Helpは見られない状態だけれど、すぐに答えを知りたい、知る必要がある状況っ て事ですか? Help無しでコーディング? 脊髄反射は止めましょうよ。 もう少しよく読んで下さい。 ----------------------------------------------------------------------- すべてのレコードがアクセスされるまでは RecordCount プロパティを調べても ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ わかりません。 ----------------------------------------------------------------------- 要はRecordCountの前にMoveLast。 |
レスありがとうございます。 >Help無しでコーディング? 確かにこのような状況でコーディングするのは無謀という感じですね。 (他人事ではないのですが・・・) > >脊髄反射は止めましょうよ。 >もう少しよく読んで下さい。 >----------------------------------------------------------------------- >すべてのレコードがアクセスされるまでは RecordCount プロパティを調べても >~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >わかりません。 >----------------------------------------------------------------------- > >要はRecordCountの前にMoveLast。 OpenRecordSetのところでエラーが発生してしまうので、てっきりSQLに問題があるのかと思ったのですが、クエリ側には特に問題はなく行き詰まっております。 エラーの内容は、 「パラメータが少なすぎます。1を指定してください。」 で、このエラーはSQLの構文に問題があるようなのですが、何か食い違ったことがあるのでしょうか? |
>エラーの内容は、 >「パラメータが少なすぎます。1を指定してください。」 http://www.vbalab.net/vbaqa/c-board.cgi?cmd=ntr;tree=11;id=access ↑が参考になると思います。 |
レスありがとうございます。 > >http://www.vbalab.net/vbaqa/c-board.cgi?cmd=ntr;tree=11;id=access > >↑が参考になると思います。 ありがとうございます。 早速試してみます。 |
▼イケガミ さん: >>エラーの内容は、 >>「パラメータが少なすぎます。1を指定してください。」 > >http://www.vbalab.net/vbaqa/c-board.cgi?cmd=ntr;tree=11;id=access > >↑が参考になると思います。 実行してみましたところ、うまく表示されました。 ご教授いただきありがとうございます。 Parametersを使用するんですね。ヘルプが普及次第調べてみたいと思います。 ありがとうございました。 |
>ヘルプが普及次第調べてみたいと思います。 ちなみに今回の件とは直接関係ないですが。。 [OFF2000]Windows2000 上でヘルプを表示しようとするとエラー http://www.microsoft.com/JAPAN/support/kb/articles/JP249/0/65.asp |
▼イケガミ さん: >>ヘルプが普及次第調べてみたいと思います。 > >ちなみに今回の件とは直接関係ないですが。。 > >[OFF2000]Windows2000 上でヘルプを表示しようとするとエラー >http://www.microsoft.com/JAPAN/support/kb/articles/JP249/0/65.asp 再びありがとうございます。 早速インストールしてみます。 |