Página 1 de 1

Consulta SQL com VBE, filtro em somatório

Enviado: 27 Nov 2017 às 13:05
por JaimeBezerra
Bom dia a todos.

Tenho um arquivo excel que extrai dados do BD SQL através de uma macro em VBE, esta macro calcula o "saldo atual" do item consultado na Query, o que preciso é que quando o resultado desta soma for igual a 0 (zero) não seja apresentado o resultado da Query.

Não sei se fui claro, não sou programador, sou apenas apaixonado por Excel e VBA, vou exemplificar o que preciso:

Resultado atual da minha query:

Item Descrição Saldo
abcd Item1 43,65
bcd Item2 0,00
dcba Item3 1,00

Resultado desejado:
Item Descrição Saldo
abcd Item1 43,65
dcba Item3 1,00

A instrução SQL que estou utilizando é:

StrQuery = "SELECT distinct a.cd_item,c.descricao,sdoatual=(a.qt_entrada - a.qt_saida) FROM (vSaldoItem a INNER JOIN vSaldoItemdia b ON a.cd_item = b.cd_item AND a.cd_deposito = " & "'" & dep & "'" & ") INNER JOIN Item c ON a.cd_item = c.cd_item order by a.cd_item"

Agradeço a ajuda

Dúvida postada, sob o mesmo título, nos forums:
Comunidade do Hardware – hardware.com.br
Script Brasil - scriptbrasil.com.br

Consulta SQL com VBE, filtro em somatório

Enviado: 27 Nov 2017 às 19:06
por Reinaldo
Deve acrescentar a clausula WHERE em sua instrução sql.
Como não tenho o banco nem a planilha para testar, experimente Algo +/- assim:
-->> .... by a.cd_item Where (a.qt_entrada - a.qt_saida)>0;"

Consulta SQL com VBE, filtro em somatório

Enviado: 28 Nov 2017 às 07:17
por JaimeBezerra
Reinaldo, era exatamente isto, só coloquei o where antes do order by e ao invés de ">" usei o "<>" pois tenho também valores negativos.

Valeu, muito obrigado