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!
Vídeo recomendado
https://youtu.be/diWPPPhW-9E
https://youtu.be/diWPPPhW-9E
Pesquisa em SQL usando dados da planilha
-
- Acabou de chegar
- Mensagens: 7
- Registrado em: Seg Mai 27, 2019 9:40 am
- Reinaldo
- 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
Uma possibilidade:
Antes do select, faça um loop concatenando as linhas
algo +/- assim
E na string sql algo +/- assim:
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
Código: Selecionar todos
...WHERE Código IN ( " & strConteudo & ")"....
-
- Acabou de chegar
- Mensagens: 7
- Registrado em: Seg Mai 27, 2019 9:40 am
Re: Pesquisa em SQL usando dados da planilha
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
Estava tentando criar um array, mas não consegui. Acho que assim vai funcionar.
Muito obrigado e um abraço!
Cristiano - BH