none
Consulta Access via VBA RRS feed

  • Pergunta

  • Pessoal, boa tarde.

    Estou com uma base em Access e estou com problemas no resultado da QUERY.

    Quando executo essa mesma QUERY no access, ela roda normalmente, mas quando jogo no VBA ela não dá erro, mas não retorna nenhum registro no RECORSET.

    Abaixo a QUERY que estou usando:

                               

     Set BD = New ADODB.Connection     

    BD.Open ConectaBD       

    sWHERE = "WHERE (((BASE_PREMIO.UF)=""SP"") AND ((BASE_PREMIO.cliente)=""CAASP"") AND ((BASE_PREMIO.GrupoPlano)=""ESPECIAL"") AND ((BASE_PREMIO.Região)=""SUDESTE"") AND ((BASE_PREMIO.TpEntidade)=""FECHADA"") AND ((BASE_PREMIO.Corretor) Like ""*""))"       

    QUERY = "SELECT BASE_PREMIO.REFERENCIA, Sum(BASE_PREMIO.Premio_Sum) AS SomaDePremio_Sum, Sum(BASE_PREMIO.Vidas_Sum) AS SomaDeVidas_Sum, Sum(IIf([DIF_MES_VENDAS_MATURADAS]>2,[PREMIO_SUM],0)) AS [VENDA MATURADA_PREMIO], Sum(IIf([DIF_MES_VENDAS_MATURADAS]>2,[VIDAS_SUM],0)) AS [VENDA MATURADA_VIDAS], Sum(IIf([VENDAS]=""S"",[PREMIO_SUM],0)) AS VENDA_PREMIO, Sum(IIf([VENDAS]=""S"",[VIDAS_SUM],0)) AS VENDA_VIDAS, Sum(IIf([VENDAS]=""N"",[PREMIO_SUM],0)) AS ESTOQUE_PREMIO, Sum(IIf([VENDAS]=""N"",[VIDAS_SUM],0)) AS ESTOQUE_VIDAS "       

    QUERY = QUERY & "FROM BASE_PREMIO "       

    QUERY = QUERY & sWHERE       

    QUERY = QUERY & " GROUP BY BASE_PREMIO.REFERENCIA;"       

    Set RS = New ADODB.Recordset           

    RS.Open QUERY, BD


    Acho que o problema ocorre porque busco campos com condições específicas. Será que preciso habilitar alguma ferramenta nas referencias do vba? Ou tem outra forma de resolver esse problema?  Obrigado.


    • Editado Fagner Campos segunda-feira, 11 de dezembro de 2017 17:27
    segunda-feira, 30 de outubro de 2017 13:49

Todas as Respostas

  • Quando estiver com problema com instruções SQL no VBA Excel use o Debeg.Print 

    Você consegue visualizar os erros na instrução por la.

    No se caso seria

    Debug.Print QUERY


    Renato MDSP

    segunda-feira, 12 de março de 2018 01:04