Não pode utilizar a roda do rato para percorrer registos num formulário do Access 2007 ou Access 2010

Sintomas

Na Vista de Formulário no Microsoft Office Access 2007 ou no Microsoft Access 2010, quando tenta utilizar a roda do rato para percorrer os registos num formulário, nada acontece. No entanto, pode utilizar a roda do rato para mover os registos para cima e para baixo quando muda o formulário para a Vista de Folha de Dados.

Causa

O comportamento da roda do rato na Vista de Formulário foi alterado intencionalmente no Access 2007 e no Access 2010 para reduzir a confusão dos utilizadores. Em versões anteriores do Access, por vezes, a roda do rato deslocava a barra de deslocamento ou a roda do rato deslocava os registos para cima ou para baixo. O comportamento da roda do rato é agora consistente e move apenas a barra de deslocamento. Não existe nenhuma propriedade para alterar este comportamento.

Solução

Pode continuar a utilizar a roda do rato na Vista de Formulário no Access 2007 e no Access 2010. Para tal, ative a base de dados ou mova-a para uma localização fidedigna. Em seguida, siga estes passos:

  1. Abra o formulário na Vista estrutura.

  2. Utilize a combinação de teclas Alt+F11 ou clique em Ver Código no grupo Ferramentas no Friso para abrir a janela do editor do Microsoft Visual Basic.

  3. Cole o seguinte código na janela de código.

    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. Guarde e, em seguida, abra o formulário na Vista de Formulário.

Este código força o utilizador a guardar um registo no qual foram feitas alterações antes de o utilizador se deslocar para outro registo. Uma das principais razões para a alteração no comportamento do deslocamento foi o facto de os utilizadores utilizarem a roda do rato para percorrer os registos e guardar automaticamente e inesperadamente as alterações ao respetivo registo.