Нельзя использовать колесико мыши для прокрутки записей в форме 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. Сохраните и откройте форму в представлении формы.

Этот код заставляет пользователя сохранять запись, в которой были внесены изменения, прежде чем пользователь прокрутит другую запись. Одной из main причин изменения поведения прокрутки было то, что пользователи использовали колесико мыши для прокрутки записей и автоматически и неожиданно сохраняли свои изменения в своей записи.