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

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Conversão de Datas
RDM
SÃO PAULO
SP - BRASIL
ENUNCIADA !
Postada em 24/11/2010 17:49 hs            
Boa Tarde pessoal
eu gostaria de saber com fazer para converter data no visual basic 6 conforme abaixo:
 
o usuário digita em uma msk_data_ini a data inicial no formato dd/mm/yyyy e digita a data final na msk_data_fim também no formato dd/mm/yyyy, eu gostaria de converter estas duas datas para o formato yyyy/mm/dd
 
obrigado!

RDM Informática
   
Almir
não registrado
ENUNCIADA !
Postada em 24/11/2010 19:27 hs   
Em propriedades do Maskedibox, coloque no Mask ##/##/####.
Private Sub MaskEdBox1_LostFocus()
Dim Data As String
Data = MaskEdBox1.Text
MaskEdBox1.Mask = "####/##/##"
MaskEdBox1.Text = Format(Data, "yyyy/mm/dd")
Data = ""
End Sub
Tente para ver se da certo
   
RDM
não registrado
ENUNCIADA !
Postada em 25/11/2010 08:21 hs   
não deu certo (invalid property value) na linha abaixo
 
MaskEdBox1.Text = Format(Data, "yyyy/mm/dd")
   
BHYLLO BARROS
não registrado
ENUNCIADA !
Postada em 25/11/2010 08:44 hs   
Bom dia!
 
Veja este exemplo usando o MaskEdBox, é semelhante ao que o Almir respondeu e funciona corretamente.
 
    MaskEdBox1.Text = Format(Date, "yyyy/mm/dd")
O resultado será Ano/Mês/Dia
 
Testa ai!
 
T+
   
Valmir
não registrado
ENUNCIADA !
Postada em 25/11/2010 08:52 hs   
RDM; este erro no qual se refere,é porque você não definiu o Mas do Maskedbox.Faça de jeito;
Private Sub Form_Load()
MaskEdBox1.Mask = "##/##/####"
End Sub
Private Sub MaskEdBox1_LostFocus()
Dim Data As String
Data = MaskEdBox1.Text
MaskEdBox1.Mask = "####/##/##"
MaskEdBox1.Text = Format(Data, "yyyy/mm/dd")
Data = ""
End Sub
Para definir o Mask do MaskEdibox, dê um click no Maskedibox e vá em Properties-MaskEdibox e onde você encontrar Mask de um click e digiata ##/##/####.Esta é outra forma de definir
o Mask e a outra é carregar no load do form.
   
RDM
não registrado
ENUNCIADA !
Postada em 25/11/2010 11:48 hs   

Ola pessoal, valeu mesmo pelas dicas, mas resolvi o problema da seguinte forma:

Criei 2 funções, uma para data inicial e outra para data final conforme abaixo e depois chamei elas dentro da select de pesquisa do mysql e funcionou na boa, vou deixar o código completo aqui, pode ser util para outros usuários do forum.

Em um modulo:

Public Function DataIni(srDTAini As String) As String

Dim cdDIAini As String

Dim cdMESini As String

Dim cdANOini As String

cdDIAini = Format(Day(srDTAini), "00")

cdMESini = Format(Month(srDTAini), "00")

cdANOini = Format(srDTAini, "yyyy")

DataIni = cdANOini & "/" & cdMESini & "/" & cdDIAini

End Function

----------------------------------------------------------------------------------------

Public Function DataFim(srDTAfim As String) As String

Dim cdDIAfim As String

Dim cdMESfim As String

Dim cdANOfim As String

cdDIAfim = Format(Day(srDTAfim), "00")

cdMESfim = Format(Month(srDTAfim), "00")

cdANOfim = Format(srDTAfim, "yyyy")

DataFim = cdANOfim & "/" & cdMESfim & "/" & cdDIAfim

End Function

No local onde se encontra os commandos de pesquisa, como por ex em um botão, onde esta o código referente a consulta no banco de dados.

    DATAMYSQLINI = DataIni(msk_data_ini.Text)

    DATAMYSQLFIM = DataFim(msk_data_fim.Text) 

    Dim MySqlConItemData As String

    Set MyRsConItemData = New ADODB.Recordset

    MySqlConItemData = "select * from apontamentos a, itens b where a.IDApontamento and b.IDApontamento and a.DataApto between '" & DATAMYSQLINI & "' And '" & DATAMYSQLFIM & "'"

    MyRsConItemData.Open MySqlConItemData, ConnMySql, adOpenKeyset, adLockOptimistic

T+

   
Página(s): 1/1    

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