domingo, 14 de setembro de 2025

📊 SQL no Excel – Post 4: Usando AND e OR para Combinar Condições

 Na vida real, dificilmente você filtra os dados com apenas um critério.

Às vezes você quer clientes de São Paulo e com idade acima de 30, ou clientes de São Paulo ou do Rio de Janeiro.

Isso é possível com AND e OR. 🚀


🎯 Projeto do Dia: Filtrar clientes de São Paulo com mais de 30 anos

1. Cenário

Continuamos com nossa tabela Clientes:

IDNomeCidadeIdade
1João SilvaSão Paulo32
2Maria SouzaRio de Janeiro27
3Carlos LimaBelo Horizonte41
4Ana SantosCuritiba36
5Fernanda AlvesSão Paulo29

Queremos somente os clientes de São Paulo que tenham mais de 30 anos.


2. Código VBA com SQL

No Editor do VBA (ALT + F11), cole o seguinte código em um módulo:

Sub FiltrarClientesAnd() ' Declaração de variáveis Dim conn As Object Dim rs As Object Dim strSQL As String Dim ws As Worksheet ' Criar conexão Set conn = CreateObject("ADODB.Connection") Set rs = CreateObject("ADODB.Recordset") ' Conectar ao arquivo Excel conn.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & ThisWorkbook.FullName & ";Extended Properties=""Excel 12.0 Xml;HDR=YES"";" ' SQL com duas condições usando AND strSQL = "SELECT * FROM [Clientes$] WHERE Cidade = 'São Paulo' AND Idade > 30" ' Executar consulta rs.Open strSQL, conn ' Criar aba de resultados Set ws = ThisWorkbook.Sheets.Add ws.Name = "SP_Maior30" ' Copiar resultados ws.Range("A1").CopyFromRecordset rs ' Fechar conexões rs.Close conn.Close MsgBox "Consulta concluída com sucesso!", vbInformation End Sub

3. Explicando o Código 📝

  • AND → exige que todas as condições sejam verdadeiras.
    Exemplo: Cidade = 'São Paulo' E Idade > 30.

  • OR → basta que uma condição seja verdadeira.
    Exemplo: Cidade = 'São Paulo' OU Cidade = 'Rio de Janeiro'.


4. Resultado esperado 📋

Rodando o código acima, a aba SP_Maior30 mostrará:

IDNomeCidadeIdade
1João SilvaSão Paulo32

Somente João aparece, porque ele é de São Paulo e tem mais de 30 anos.

Se trocássemos o AND por OR, apareceriam todos os clientes de São Paulo ou todos com idade maior que 30 (João, Carlos e Ana, além da Fernanda por ser de São Paulo).


📌 O que você aprendeu hoje?

✅ Como combinar condições no WHERE.
✅ Diferença entre AND e OR.
✅ Como criar filtros avançados para consultas no Excel.


👉 No próximo post (Post 5), vamos aprender a ordenar os resultados com ORDER BY – por exemplo, listar os clientes por idade em ordem crescente ou decrescente.


📢 Dica extra

Assim como você organiza seus dados no Excel com SQL, eu também posso organizar sua vida contábil.
Sou contador especializado em profissionais de serviços e posso ajudar você com:
✅ Abertura de empresas no Simples Nacional
✅ Acompanhamento contábil mensal
✅ Planejamento tributário para pagar menos impostos

💼 Fale comigo e simplifique sua contabilidade!

Nenhum comentário:

Postar um comentário