USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  DATA?? Como validar??
MINER
POTIRENDABA
SP - BRASIL
ENUNCIADA !
Postada em 12/09/2005 10:48 hs            
ola pessoal olha eu aqui dandu trabahu dinovo
galera seguinte
tenhu uma MSK q uso pra inserirdata tipo ##/##/####
mas naum estou conseguindo validar datas nesse formato pois preciso validar como dd/mm/yyyy mas a funçao ISDATE naum verifica assim achu q ela pega o formatu americanu mm/dd/yyyy.
como faço pesssoal pra validar do jeito q mencionei acima????
 
   
Kelebrimbor
TRAMANDAÍ
RS - BRASIL
ENUNCIADA !
Postada em 12/09/2005 11:19 hs            
eu criei uma funcao, ai vai?
 
'Procedimento que verifica a correcao de datas indicadas
Public Function Verifica_Data(Data As String) As Boolean
On Error GoTo Trata_Erro
    Verifica_Data = True
    If Data = "__/__/____" Then
        Exit Function
    End If
    For i = 1 To 10
        If i = 3 Or i = 6 Then
            i = i + 1
        End If
        If Not IsNumeric(Mid(Data, i, 1)) Then
'            MsgBox "Data inválida", vbOKOnly + vbInformation
            Verifica_Data = False
            Exit Function
        End If
    Next i
    Dim Dia, Mes, Ano As Integer
    Dia = Mid(Data, 1, 2)
    Mes = Mid(Data, 4, 2)
    Ano = Mid(Data, 7, 4)
    If Dia = 0 Or Mes = 0 Or Mes > 12 Or Ano = 0 Then
'        MsgBox "Data inválida", vbOKOnly + vbInformation
        Verifica_Data = False
        Exit Function
    ElseIf Mes = 1 Or Mes = 3 Or Mes = 5 Or Mes = 7 Or Mes = 8 Or Mes = 10 Or Mes = 12 Then
        If Dia > 31 Then
'            MsgBox "Data inválida", vbOKOnly + vbInformation
            Verifica_Data = False
            Exit Function
        End If
    ElseIf Mes = 4 Or Mes = 6 Or Mes = 9 Or Mes = 11 Then
        If Dia > 30 Then
'            MsgBox "Data inválida", vbOKOnly + vbInformation
            Verifica_Data = False
            Exit Function
        End If
    ElseIf Mes = 2 Then
        If Int(Ano / 400) = (Ano / 400) Then
            If Dia > 29 Then
'                MsgBox "Data inválida", vbOKOnly + vbInformation
                Verifica_Data = False
            End If
        ElseIf Int(Ano / 500) = (Ano / 500) Then
            If Dia > 28 Then
'                MsgBox "Data inválida", vbOKOnly + vbInformation
                Verifica_Data = False
            End If
        ElseIf Int(Ano / 4) = (Ano / 4) Then
            If Dia > 29 Then
'                MsgBox "Data inválida", vbOKOnly + vbInformation
                Verifica_Data = False
            End If
        ElseIf Dia > 28 Then
'            MsgBox "Data inválida", vbOKOnly + vbInformation
            Verifica_Data = False
        End If
   
   
    End If
Trata_Erro:
    If Err.Number = 13 Then
'        MsgBox "Data inválida", vbOKOnly + vbInformation
        Verifica_Data = False
    End If
End Function

Dá-lhe internacional, unico campeao brasileiro invicto.
   
MINER
POTIRENDABA
SP - BRASIL
ENUNCIADA !
Postada em 12/09/2005 14:29 hs            
KARA NAUM CONSEGUI FAZER A FUNÇAO FUNCIONAR
DA SEMPRE "ARGUMENT NOT OPTIONAL" QUANDU VO CHAMA ELA SEJA NO LOSTFOCOS, NO KEYPRESS.
COMO VC MONTOU ISSO EM Q EVENTO CHAMA A FUNÇAO ?
PODERIA ME PASSAR SE PUDER?
 
   
Gelson Porto
Pontos: 2843 Pontos: 2843 Pontos: 2843
RIO DE JANEIRO
RJ - BRASIL
Postada em 12/09/2005 14:43 hs            
IF not Verifica_Data (Variavel) Then
   msgbox "Data Invalida", vbokonly
endif
 
     
ghost_jlp
Pontos: 2843 Pontos: 2843 Pontos: 2843 Pontos: 2843
SÃO PAULO
SP - BRASIL
ENUNCIADA !
Postada em 12/09/2005 15:45 hs            
Um outra forma é vc usar o dtpicker... é uma combobox especificamente para datas não sendo necessário validação por código já q o próprio controle faz isso.
Vá no menu "Project...components". Procure por Microsoft Windows Common Controls - 2 6.0.
Depois é só adicionar ao seu projeto ok??
 
Passei a usá-lo por ser mais fácil para o usuário escolher a data e tb por causa deste problema q vc relatou da função isdate...
 
qq problema é só postar
 
t+
   
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2024   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página