Vídeo recomendado
https://youtu.be/diWPPPhW-9E

Pesquisa em SQL usando dados da planilha

Fórum para dúvidas sobre os fundamentos da linguagem de programação Visual Basic no contexto do VBA
cparreiras
Acabou de chegar
Acabou de chegar
Mensagens: 7
Registrado em: Seg Mai 27, 2019 9:40 am

Pesquisa em SQL usando dados da planilha

Mensagem por cparreiras »

Boa tarde!
Me desculpem, postei esta dúvida no forum de Banco de Dados e SQL, mas talvez aqui seja mais apropriado, já que estou trabalhando com uma consulta em SQL dentro de um código Vba. Ela é a seguinte:
Preciso fazer uma pesquisa em uma tabela de banco de dados SQL, usando como critério os códigos que estão em uma coluna de uma planilha. Por exemplo:
Range de códigos nas células A2:A5 (onde A2=101, A3=105, A4=111, A5=119). Importante: este range pode variar de tamanho.
Então a pesquisa que está inserida em um código VBA seria:
SELECT Código, Nome, Sexo FROM TabelaSQL WHERE Código IN (dados do range A2:A5 da planilha).
Minha dúvida é como pegar estes códigos na planilha para que meu SQL seja:
...WHERE Código IN (101,105,111,119).
Desde já agradeço!


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Avatar do usuário
Reinaldo
Jedi
Jedi
Mensagens: 1537
Registrado em: Sex Ago 01, 2014 4:09 pm
Localização: Garça - SP / SCS - SP

Re: Pesquisa em SQL usando dados da planilha

Mensagem por Reinaldo »

Uma possibilidade:
Antes do select, faça um loop concatenando as linhas
algo +/- assim

Código: Selecionar todos

Dim x As Integer
Dim strConteudo As String
For x = 2 To 5
    If x <= 4 Then strConteudo = strConteudo & Cells(x, 1).Value & ","
    If x = 5 Then strConteudo = strConteudo & Cells(x, 1).Value
Next
E na string sql algo +/- assim:

Código: Selecionar todos

...WHERE Código IN ( " & strConteudo & ")"....


cparreiras
Acabou de chegar
Acabou de chegar
Mensagens: 7
Registrado em: Seg Mai 27, 2019 9:40 am

Re: Pesquisa em SQL usando dados da planilha

Mensagem por cparreiras »

Gostei da ideia Reinaldo!
Estava tentando criar um array, mas não consegui. Acho que assim vai funcionar.
Muito obrigado e um abraço!
Cristiano - BH


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Responder