none
ERRO DATA VBA RRS feed

  • Pergunta

  • Boa tarde Galera primeira pergunta no fórum!

    Tenho um código que se a data for menor que 12 ela inverte exemplo 02/03/2017 ela altera para 03/02/2017 e se a data for maior que 12 exemplo 13/02/2017 ela permanece da maneira correta. preciso que ela sempre fique no modo DD/MM/YYYY. Segue código .

    Private Sub caixa_check_in_AfterUpdate()
    Dim Data As Date
    Data = Me.caixa_check_out
    
    If Left(Me.caixa_check_in, 2) > 31 Then
       MsgBox "Data preenchida de forma incorreta, dia inválido", vbExclamation, "Erro Data"
       Me.caixa_check_in = ""
    ElseIf Right(Left(Me.caixa_check_in, 5), 2) > 12 Then
       MsgBox "Data preenchida de forma incorreta, mês inválido", vbExclamation, "Erro Data"
       Me.caixa_check_in = ""
    ElseIf Data < Now Then
       MsgBox "A data deve ser maior que hoje, cadastro não permitido", vbExclamation, "Erro Data"
       Me.caixa_check_in = ""
    End If
    End Sub
    
    Private Sub caixa_check_in_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    caixa_check_out.MaxLength = 10 '10/10/2014
     Select Case KeyAscii
          Case 8       'Aceita o BACK SPACE
          Case 13: SendKeys "{TAB}"    'Emula o TAB
          Case 48 To 57
            If caixa_check_in.SelStart = 2 Then caixa_check_in.SelText = "/"
             If caixa_check_in.SelStart = 5 Then caixa_check_in.SelText = "/"
          Case Else: KeyAscii = 0     'Ignora os outros caracteres
       End Select
    End Sub

    quinta-feira, 4 de maio de 2017 17:47