マウス ホイールを使用して Access 2007 または Access 2010 フォームのレコードをスクロールすることはできません
現象
Microsoft Office Access 2007 または Microsoft Access 2010 のフォーム ビューで、マウス ホイールを使用してフォーム内のレコードを移動しようとすると、何も起こりません。 ただし、フォームをデータシート ビューに切り替えるときは、マウス ホイールを使用してレコードを上下に移動できます。
原因
フォーム ビューでのマウス ホイールの動作は、Access 2007 と Access 2010 でユーザーの混乱を減らすために意図的に変更されました。 以前のバージョンの Access では、マウス ホイールでスクロール バーを移動したり、マウス ホイールでレコードを上下に移動したりすることがあります。 マウス ホイールの動作が一貫性があり、スクロール バーのみが移動します。 この動作を変更するプロパティはありません。
回避策
引き続き、Access 2007 および Access 2010 のフォーム ビューでマウス ホイールを使用できます。 これを行うには、データベースを有効にするか、信頼できる場所に移動します。 その後、次の手順に従います。
デザイン ビューでフォームを開きます。
Alt + F11 キーの組み合わせを使用するか、リボンの [ツール] グループで [ コードの表示 ] をクリックして、Microsoft Visual Basic エディター ウィンドウを開きます。
次のコードをコード ウィンドウに貼り付けます。
Private Sub Form_MouseWheel(ByVal Page As Boolean, ByVal Count As Long) If Not Me.Dirty Then If (Count < 0) And (Me.CurrentRecord > 1) Then DoCmd.GoToRecord , , acPrevious ElseIf (Count > 0) And (Me.CurrentRecord <= Me.Recordset.RecordCount) Then DoCmd.GoToRecord , , acNext End If Else MsgBox "The record has changed. Save the current record before moving to another record." End If End Sub
フォーム ビューでフォームを保存して開きます。
このコードでは、ユーザーが別のレコードにスクロールする前に変更が加えられたレコードをユーザーに強制的に保存します。 スクロール動作の変更のメイン理由の 1 つは、ユーザーがマウス ホイールを使用してレコードをスクロールし、自動的に変更をレコードに保存することです。
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示