- ベストアンサー
AccessVBA レコード数を調べるには
こんにちは。 タイトルにも書きましたが、あるフォームがあって、そのフォームに 表示されている全てのレコードの数をかぞえる方法と、 今カーソルがある(値が選択されている)レコードが何番目のレコード なのかという値を返してくれる関数か何かありますでしょうか。 あったらぜひ教えていただきたいです。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
目的が、自前でナビゲーションボタンを作ることでしたら、 レコード番号のコントロールソースを =[CurrentRecord] レコード数のコントロールソースを =Count("*")-[NewRecord] これで、ナビゲーションボタンの表示と同じになります。 VBA は必要ありません。
その他の回答 (1)
- bonaron
- ベストアンサー率64% (482/745)
回答No.1
表示されている全てのレコードの数 =Me.RecordsetClone.RecordCount 今カーソルがある(値が選択されている)レコードが何番目のレコードなのか =Me.CurrentRecord そのフォームがコードを書かれている自身の場合は 上記で求められます。 汎用的なものにするには、 引数で、Formオブジェクトまたはフォーム名を渡して 上記コードの Me を適切なものに変更して、 値を返す Function Procedure を作ってください。 探せばどこかにあるかもしれませんが 作ったほうが速いでしょう。
お礼
早速の回答ありがとうございます。 もう一つお聞きしたいのですが、txtレコードというテキストボックス を作成し、Me.txtレコード = Me.CurrentRecord と記述しようと思うのですが、どのようなイベントの中に書けばちゃんと選択レコード が変わるたびにテキストの中身が更新されるのでしょうか?