Boa noite,
Tenho um campo chamado 'DATA' com máscara de entrada (dd/mm/aaaa) em um formulário. O problema é que quando digito uma data inexistente nesse campo, por exemplo 12/13/2018, o Access "corrige" para 13/12/2018.
Teoricamente isso não era para acontecer pois tanto o banco de dados quanto o controle 'DATA' do formulário está configurado para NÃO USAR AUTOCORREÇÃO. Além disso tenho este código no evento AO OCORRER ERRO do formulário:
===============================================================
Tenho um campo chamado 'DATA' com máscara de entrada (dd/mm/aaaa) em um formulário. O problema é que quando digito uma data inexistente nesse campo, por exemplo 12/13/2018, o Access "corrige" para 13/12/2018.
Teoricamente isso não era para acontecer pois tanto o banco de dados quanto o controle 'DATA' do formulário está configurado para NÃO USAR AUTOCORREÇÃO. Além disso tenho este código no evento AO OCORRER ERRO do formulário:
===============================================================
- Código:
Private Sub Form_Error(DataErr As Integer, Response As Integer)
' AUTORES: Microsoft e Eu
Const INPUTMASK_VIOLATION = 2279 'SUBSTITUI A MENSAGEM DE ERRO PADRÃO DA MÁSCARA POR INSUFICIÊNCIA DE NÚMEROS DE CARACTERES
Const DATAVALUE_VIOLATION = 2113 'SUBSTITUI A MENSAGEM DE ERRO PADRÃO DA MÁSCARA POR INSERÇÃO DE DATA INEXISTENTE
'::INÍCIO DO CÓDIGO PARA MÁSCARA DE ENTRADA ERRADA, QUANDO SE DIGITA NÚMERO INSUFICIENTE DE CARACTERES::
If DataErr = INPUTMASK_VIOLATION Then
Select Case Screen.ActiveControl.Name
Case "Data"
Beep
MsgBox "DATA INCORRETA!", vbCritical, "ERRO"
Data.Undo
Data = Null
Case Else
End Select
Response = acDataErrContinue 'INIBE MENSAGEM PADRÃO DE ERRO DO ACCESS
End If
'::FIM DO CÓDIGO PARA MÁSCARA DE ENTRADA ERRADA, QUANDO SE DIGITA NÚMERO INSUFICIENTE DE CARACTERES::
'::INÍCIO DO CÓDIGO PARA MÁSCARA DE ENTRADA ERRADA, QUANDO SE DIGITA UMA DATA INEXISTENTE. EXEMPLO: 12/88/1988::
If DataErr = DATAVALUE_VIOLATION Then
Select Case Screen.ActiveControl.Name
Case "Data" 'CAMPO 1
Beep
MsgBox "DATA INCORRETA!", vbCritical, "ERRO"
Data.Undo
Data = Null
Case Else
End Select
Response = acDataErrContinue 'INIBE MENSAGEM DE ERRO PADRÃO DO ACCESS
End If
'::FIM DO CÓDIGO PARA MÁSCARA DE ENTRADA ERRADA, QUANDO SE DIGITA UMA DATA INEXISTENTE. EXEMPLO: 12/88/1988::
End Sub