• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:GoToRecordで実行時エラー '2105')

GoToRecordで実行時エラー '2105'

このQ&Aのポイント
  • Access2000でDoCmd.GoToRecordを使用して次のレコードに移動する際に実行時エラー '2105' が発生します。解決方法を教えてください。
  • Private Sub 次へ_Click()内にDoCmd.GoToRecordを使用して次のレコードに移動する処理を書きましたが、最後のレコードまで行った後に「次へ」をクリックすると実行時エラーが発生してしまいます。エラーメッセージを表示せずに移動できないようにする方法を教えてください。
  • Access2000のVBAでDoCmd.GoToRecordを使用して次のレコードに移動する処理を書いたのですが、最後のレコードまで行った後に「次へ」をクリックすると実行時エラーが発生してしまいます。エラーを表示せずに移動できないようにするにはどうすればよいですか?

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

  • ベストアンサー
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.2

こんにちは。maruru01です。 先頭レコードや末尾レコードは以下のように判定出来ます。 Dim tempRecNum As Long tempRecNum = Me.CurrentRecord Select Case tempRecNum   Case Me.Recordset.RecordCount     MsgBox "一番後ろのレコード"   Case 1     MsgBox "一番前のレコード"   Case Else     MsgBox tempRecNum & "番目のレコード" End Select

noname#12495
質問者

お礼

ご回答、ありがとうございました。 無事できました。感謝いたします。 Dcountでしかレコード件数を数える事を知らない私には 大変勉強になりました。 今後もこのケース文はいろんな場面で使用できそうです。 本当にありがとうございました。

その他の回答 (1)

  • Gin_F
  • ベストアンサー率63% (286/453)
回答No.1

If Err.Number = 2105 Then   MsgBox "移動できません。" Else > MsgBox ERR.Description End If > Resume Exit_次へ_Click のようにしてみてください。

noname#12495
質問者

お礼

ご回答、ありがとうございました。 エラーが発生するのが移動時でしたのでIf文で分岐する ことができませんでした。 説明不足で申し訳ありませんでした。 また、よろしくお願いします。

関連するQ&A