Try;
Private Sub Form_Timer()
On Error Resume Next
Me.PreçoVenda.Value = Nz(Me.PreçoVendaMZN.Value, 0) / Nz(Me.Cambio.Value, 0)
Me.Margem = (Nz(Me.PreçoVenda.Value, 0) - Nz(Me.Preçocusto.Value, 0)) / Nz(Me.PreçoVenda.Value, 0)
Me.Actualizado.Value = Date
DoCmd.GoToRecord record:=acNext
Me.PreçoVenda.Value = Nz(Me.PreçoVendaMZN.Value, 0) / Nz(Me.Cambio.Value, 0)
Me.Margem = (Nz(Me.PreçoVenda.Value, 0) - Nz(Me.Preçocusto.Value, 0)) / Nz(Me.PreçoVenda.Value, 0)
Me.Actualizado.Value = Date
DoCmd.GoToRecord record:=acNext
If IsNull(Me.Ref) Or Me.Ref = "" Then
MsgBox "Acerto do Preço de Venda Terminado", vbQuestion, "Aviso"
DoCmd.Close acForm, "rotina"
DoCmd.Close acForm, "executar"
Exit Sub
End If
End Sub