마우스 휠을 사용하여 Access 2007 또는 Access 2010 양식의 레코드를 스크롤할 수 없습니다.

증상

Microsoft Office Access 2007 또는 Microsoft Access 2010 양식 보기에서 마우스 휠을 사용하여 폼의 레코드를 이동하려고 하면 아무 일도 발생하지 않습니다. 그러나 폼을 데이터시트 보기로 전환할 때 마우스 휠을 사용하여 레코드를 위아래로 이동할 수 있습니다.

원인

폼 뷰의 마우스 휠 동작은 사용자 혼동을 줄이기 위해 Access 2007 및 Access 2010에서 의도적으로 변경되었습니다. 이전 버전의 Access에서는 마우스 휠이 스크롤 막대를 이동하거나 마우스 휠이 레코드를 위아래로 이동하는 경우가 있습니다. 이제 마우스 휠 동작이 일관되고 스크롤 막대만 이동합니다. 이 동작을 변경할 속성이 없습니다.

해결 방법

Access 2007 및 Access 2010의 양식 보기에서 마우스 휠을 계속 사용할 수 있습니다. 이렇게 하려면 데이터베이스를 사용하도록 설정하거나 신뢰할 수 있는 위치로 이동합니다. 그런 다음, 다음 단계를 수행합니다.

  1. 디자인 뷰에서 양식을 엽니다.

  2. Alt+F11 키 조합을 사용하거나 리본 메뉴의 도구 그룹에서 코드 보기를 클릭하여 Microsoft Visual Basic 편집기 창을 엽니다.

  3. 다음 코드를 코드 창에 붙여넣습니다.

    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
    
  4. 양식 보기에서 양식을 저장한 다음 엽니다.

이 코드는 사용자가 다른 레코드로 스크롤하기 전에 변경된 레코드를 저장하도록 강제합니다. 스크롤 동작이 변경된 기본 이유 중 하나는 사용자가 마우스 휠을 사용하여 레코드를 스크롤하고 변경 내용을 자동으로 레코드에 예기치 않게 저장하기 때문입니다.