none
SQL Date in VBA Excel don't work RRS feed

  • Pergunta

  • Olá,

    Montei um listview que busca informações da planilha e quero montar alguns filtros.

    Ao tentar montar um filtro por data não estou conseguindo que o SQL retorne corretamente os dados!

    Podem me ajudar a identificar o que pode ser esse erro?

     If ComboBoxPeriodo.ListIndex = 0 Then
                Call MontaClausulaWhere(txtAction.Name, "DATE", sqlWhere)
        ElseIf ComboBoxPeriodo.ListIndex = 1 Then
            Dim vtwelvemonthsaux As Date
            Dim vtwelvemonths As Date
            Dim NOMECOLUNA As String
            
            vtwelvemonthsaux = Now() - 365
            vtwelvemonths = Format(Month(vtwelvemonthsaux) & "/" & Year(vtwelvemonthsaux), "dd/mm/yyyy")
            NOMECOLUNA = "OCCURDATE"
            
            sqlWhere = sqlWhere & " " & NOMECOLUNA & " between " & vtwelvemonths & " and " & Format(Now(), "dd/mm/yyyy")
        
    End If

       

    Abraços

    Tiago


    • Editado Tiago N Mesquita quinta-feira, 12 de novembro de 2015 12:33 Translate
    • Tipo Alterado Tiago N Mesquita quinta-feira, 12 de novembro de 2015 12:33 translate
    quarta-feira, 11 de novembro de 2015 20:53

Respostas

  • Descobri pessoal!

            sqlWhere = sqlWhere & " " & NOMECOLUNA & " BETWEEN " & CLng(CDate(vtwelvemonths)) & _
                                  " AND " & CLng(CDate(Now()))

    Utilizando as funções acima o excel transforma a data em um número que é entendido pelo SQL e assim retorna as linhas corretamente!

    Obriagado!

    Abraços Tiago

    • Marcado como Resposta Tiago N Mesquita quinta-feira, 12 de novembro de 2015 14:01
    quinta-feira, 12 de novembro de 2015 13:53