• ベストアンサー

AccessVBA レコード数を調べるには

こんにちは。 タイトルにも書きましたが、あるフォームがあって、そのフォームに 表示されている全てのレコードの数をかぞえる方法と、 今カーソルがある(値が選択されている)レコードが何番目のレコード なのかという値を返してくれる関数か何かありますでしょうか。 あったらぜひ教えていただきたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • bonaron
  • ベストアンサー率64% (482/745)
回答No.2

目的が、自前でナビゲーションボタンを作ることでしたら、 レコード番号のコントロールソースを =[CurrentRecord] レコード数のコントロールソースを =Count("*")-[NewRecord] これで、ナビゲーションボタンの表示と同じになります。 VBA は必要ありません。

その他の回答 (1)

  • bonaron
  • ベストアンサー率64% (482/745)
回答No.1

表示されている全てのレコードの数  =Me.RecordsetClone.RecordCount 今カーソルがある(値が選択されている)レコードが何番目のレコードなのか  =Me.CurrentRecord そのフォームがコードを書かれている自身の場合は 上記で求められます。 汎用的なものにするには、 引数で、Formオブジェクトまたはフォーム名を渡して 上記コードの Me を適切なものに変更して、 値を返す Function Procedure を作ってください。 探せばどこかにあるかもしれませんが 作ったほうが速いでしょう。

noname#181362
質問者

お礼

早速の回答ありがとうございます。 もう一つお聞きしたいのですが、txtレコードというテキストボックス を作成し、Me.txtレコード = Me.CurrentRecord と記述しようと思うのですが、どのようなイベントの中に書けばちゃんと選択レコード が変わるたびにテキストの中身が更新されるのでしょうか?

関連するQ&A