MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

3 participantes

    Consulta SQL em VBA não aparece na minha listabox.

    avatar
    elmanojr
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 24
    Registrado : 20/07/2017

    Consulta SQL em VBA não aparece na minha listabox. Empty Consulta SQL em VBA não aparece na minha listabox.

    Mensagem  elmanojr 9/4/2021, 03:20

    Boa noite!

    Tenho um form, onde faço uma busca para selecionar uma tabela, depois um registro de escolha do usuário.
    A ideia é: Primeiro ele escolhe uma opção em uma comboBox. Onde relaciono as tabelas possíveis.
    Através de um botão "Buscar" passo as instruções etc. Mando o foco para o campo txtNomeBusca.
    Onde a medida que o usuário escreve o nome da busca, vai apresentando o resultado na listBox.
    Tentei passar a instrução SQL via código VBA no form, conforme um exemplo.
    Porém, a consulta é feita mas não aparece os registros da tabela na minha  listBox.
    Detalhe, fiz um teste, e quando coloco a instrução  SQL direto no campo Rowsource da minha listbox, funciona! Os registros aparecem.
    Quando faço isto pelo código VBA, não aparece nada.
    Vou colocar aqui um pedaço do código:
    ========================================
    Private Sub btnBuscar_Click()
    On Error GoTo Err_Handler

    'Primeiro Crio as variáveis
    Dim strSQL As String
    Dim strComplemento As Variant

    strComplemento = "[Formulários]![B_BuscaGeral]![txtNomeBusca].[Texto]"

    'Faço um Select na cboTipoBusca
    Select Case Me.cboTipoBusca
       Case Is = "Campanhas"
           'Passo a instrução SQL
           strSQL = "SELECT tabCampanhasMidiasSociais.IDCampanha, tabCampanhasMidiasSociais.dtCam_data, tabCampanhasMidiasSociais.strCam_nome FROM tabCampanhasMidiasSociais"
           strSQL = strSQL & "WHERE tabCampanhasMidiasSociais.strCam_nome LIKE '" & strComplemento & "' * "
           strSQL = strSQL & "ORDER BY tabCampanhasMidiasSociais.strCam_nome;"
         
               'Deixo a caixa de listagem listBuscaEscolhida visivel (visible) verdadeira (True)
               Me.listBuscaEscolhida.Visible = True
                   'Passo a instrução SQL para a caixa de listagem
                   Me.listBuscaEscolhida.RowSource = strSQL
                   GoTo Exit_Here
    continua....
    =============================================================
    Copiei a instrução SQL igual a que o Access faz no construtor de consultas por isto ficou grande. kkkkk
    Penso que o erro está, strComplemento = "[Formulários]![B_BuscaGeral]![txtNomeBusca].[Texto]" mas não tenho certeza, pois acho que a instrução faz a consulta, somente não aparece na listBox.
    Detalhe não da erro em tempo de execução, somente a lista não aparece na listBox.
    Pode me ajudar?
    Muito Obrigado!
    Noobezinho
    Noobezinho
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4144
    Registrado : 29/06/2012

    Consulta SQL em VBA não aparece na minha listabox. Empty Re: Consulta SQL em VBA não aparece na minha listabox.

    Mensagem  Noobezinho 9/4/2021, 14:55

    Olá Elmano

    Sim, tens razão ao suspeitar da variável strComplemento.

    Mas foi uma pequena falta de atenção da tua parte.

    Veja, se definiu o nome da variável, com str(string) então ela não poder ser Variant, certo?

    Então:

    Dim strComplemento As String

    strComplemento = [Forms]![B_BuscaGeral]![txtNomeBusca]

    Nessas frases

    Faltou um espaço antes da aspa no final da frase, veja que não tem o espaço antes da clausula WHERE, o que
     deixaria o nome da tabela e o WHERE grudados gerando erro.


     strSQL = "SELECT tabCampanhasMidiasSociais.IDCampanha, tabCampanhasMidiasSociais.dtCam_data, tabCampanhasMidiasSociais.strCam_nome FROM tabCampanhasMidiasSociais "  

    Retire o asterisco do final da frase, não é necessário.

     strSQL = strSQL & "WHERE tabCampanhasMidiasSociais.strCam_nome LIKE '" & strComplemento & "' * "





    Me.listBuscaEscolhida.RowSource = strSQL

    Me.listBuscaEscolhida.Requery   <---- Acrescente

    Bem é isso que estou crendo que está precisando.

    Caso não "funfe", copie os objetos envolvidos nessa operação,

    e nos envie para podermos analisar e tentar consertar.

    {}'s

    Balem


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    elmanojr
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 24
    Registrado : 20/07/2017

    Consulta SQL em VBA não aparece na minha listabox. Empty Consulta SQL em VBA naoa aparece na minha listabox.

    Mensagem  elmanojr 20/4/2021, 03:25

    Ola,

    Dim strComplemento As String

    strComplemento = [Forms]![B_BuscaGeral]![txtNomeBusca]

    Se é string tem que ficar entre aspas

    strComplemento = "[Forms]![B_BuscaGeral]![txtNomeBusca]"


    Mas ainda assim não foi resolvido....
    Continua não aparecendo na listbox.

    PS Tambem deixei o espaço que voce sugeriu na clausula WHERE , mas continua tudo igual... não aparece nada na listbox.
    Noobezinho
    Noobezinho
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4144
    Registrado : 29/06/2012

    Consulta SQL em VBA não aparece na minha listabox. Empty Re: Consulta SQL em VBA não aparece na minha listabox.

    Mensagem  Noobezinho 20/4/2021, 11:25

    Elmano

    Não tenha receio em me chamar de Noobezinho. Wink

    Não me referi a essa frase:

    strComplemento = "[Forms]![B_BuscaGeral]![txtNomeBusca]"  

    Veja que como vc colocou as aspas na frase, ao invés do Access pegar o valor da txtNomeBusca pegou o texto, entendeu?

    O valor dela com  seria = [Forms]![B_BuscaGeral]![txtNomeBusca],literalmente, e não o valor da caixa de controle.


    Me referi  ali no lugar de variant onde vc trocou por string

    'Primeiro Crio as variáveis
    Dim strSQL As String
    Dim strComplemento As Variant

    Concluindo, retire as aspas e teste novamente.

    Se não funfar, faça o que pedi, envie-nos parte do BD...


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    elmanojr
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 24
    Registrado : 20/07/2017

    Consulta SQL em VBA não aparece na minha listabox. Empty Consulta SQL em VBA nao aparece na minha listabox.

    Mensagem  elmanojr 21/4/2021, 06:00

    Noobezinho

    Boa noite,

    Infelizmente fiz do jeito que falou mas não deu certo.

    Continua não aparecendo nada na minha listabox

    Então estou anexando BD com 3 forms, para vc entender o que acontece

    1-B_geral_String

    Onde uso:
    Dim strNome As String
    strNome = "[Formulários]![B_BuscaGeral_string]![txtNomeBusca]"

    Executa a consulta mas não mostra nada.

    2-B_geral_Variant

    Onde uso:
    Dim strNome As Variant
    strNome = [Forms]![B_BuscaGeral_variant]![txtNomeBusca]

    Tambem executa a consulta mas não mostra nada na listbox

    3-BuscaGeral

    Onde passo a SQL direto no rowsource:

    SELECT tabCampanhasMidiasSociais.IDCampanha, tabCampanhasMidiasSociais.dtCam_data, tabCampanhasMidiasSociais.strCam_nome
    FROM tabCampanhasMidiasSociais
    WHERE (((tabCampanhasMidiasSociais.strCam_nome) Like [Formulários]![BuscaGeral]![cxTxtNomePesquisa].[Texto] & "*"))
    ORDER BY tabCampanhasMidiasSociais.IDCampanha;

    Ai funciona veja voce mesmo.

    Aparece os arquivos na listbox, e quando voce digite um nome (Facebook, ou Youtube) na caixa de texto faz a busca corretamente.

    Ok, Poderia fazer uma consulta para cada tabela, que talvez daria certo...porem como tenho varias tabelas que irão demandar pesquisas quis economizar formularios e fazer um só onde atravez da comobox poderia escolher a tabela.

    Bem de uma olhada e me ajude
    Valeu , muito obrigado!

    Noobezinho
    Noobezinho
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4144
    Registrado : 29/06/2012

    Consulta SQL em VBA não aparece na minha listabox. Empty Re: Consulta SQL em VBA não aparece na minha listabox.

    Mensagem  Noobezinho 21/4/2021, 10:51

    Ainda não veio o arquivo, amigo.

    Para anexar, ele tem que estar em zip.

    Caso use o winrar, nele tem a opção de "zipar" o arquivo.

    Se acaso o arquivo em zip tenha passado de 2K, abra o

    o BD no Access e compacte-o, depois use o winrar.

    Edite tua última msg e anexe o arquivo.


    { }'s


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    elmanojr
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 24
    Registrado : 20/07/2017

    Consulta SQL em VBA não aparece na minha listabox. Empty Consulta SQL em VBA naoa aparece na minha listabox.

    Mensagem  elmanojr 22/4/2021, 03:35

    Boa noite,

    Infelizmente fiz do jeito que falou mas não deu certo.

    Continua não aparecendo nada na minha listabox

    Então estou anexando BD com 3 forms, para vc entender o que acontece

    1-B_geral_String

    Onde uso:
    Dim strNome As String
    strNome = "[Formulários]![B_BuscaGeral_string]![txtNomeBusca]"

    Executa a consulta mas não mostra nada.

    2-B_geral_Variant

    Onde uso:
    Dim strNome As Variant
    strNome = [Forms]![B_BuscaGeral_variant]![txtNomeBusca]

    Tambem executa a consulta mas não mostra nada na listbox

    3-BuscaGeral

    Onde passo a SQL direto no rowsource:

    SELECT tabCampanhasMidiasSociais.IDCampanha, tabCampanhasMidiasSociais.dtCam_data, tabCampanhasMidiasSociais.strCam_nome
    FROM tabCampanhasMidiasSociais
    WHERE (((tabCampanhasMidiasSociais.strCam_nome) Like [Formulários]![BuscaGeral]![cxTxtNomePesquisa].[Texto] & "*"))
    ORDER BY tabCampanhasMidiasSociais.IDCampanha;

    Ai funciona veja voce mesmo.

    Aparece os arquivos na listbox, e quando voce digite um nome (Facebook, ou Youtube) na caixa de texto faz a busca corretamente.

    Ok, Poderia fazer uma consulta para cada tabela, que talvez daria certo...porem como tenho varias tabelas que irão demandar pesquisas quis economizar formularios e fazer um só onde atraves da comobox poderia escolher a tabela.

    Bem de uma olhada e me ajude
    Valeu , muito obrigado!

    PS: Na caixa combo, deve escolher "Campanhas" e depois clicar em buscar....
    Noobezinho
    Noobezinho
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4144
    Registrado : 29/06/2012

    Consulta SQL em VBA não aparece na minha listabox. Empty Re: Consulta SQL em VBA não aparece na minha listabox.

    Mensagem  Noobezinho 22/4/2021, 10:16

    Não veio o BD ainda, amigo

    Consulta SQL em VBA não aparece na minha listabox. Fig110


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    elmanojr
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 24
    Registrado : 20/07/2017

    Consulta SQL em VBA não aparece na minha listabox. Empty Consulta SQL em VBA naoa aparece na minha listabox.

    Mensagem  elmanojr 23/4/2021, 01:59

    Ola,
    Ja mandei o DB 4 vezes por algum motivo não esta carregando, mesmo mostrando aqui que o arquivo foi selecionado...

    Não sei o que houve, mas tentarei novamente!
    Obrigado.
    Noobezinho
    Noobezinho
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4144
    Registrado : 29/06/2012

    Consulta SQL em VBA não aparece na minha listabox. Empty Re: Consulta SQL em VBA não aparece na minha listabox.

    Mensagem  Noobezinho 23/4/2021, 02:09

    Para ter certeza que o arquivo foi enviado,

    após clicar no botão escolher arquivo e ele carregar no lado dele,

    clica-se no botão enviar que está na mesma linha.

    Após ser enviado, desaparece o botão enviar. ficando

    o nome do arquivo e o botão enviar.

    E quando enviar a mensagem ira aparecer o arquivo na

    mensagem para os outros fazer o download.


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    elmanojr
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 24
    Registrado : 20/07/2017

    Consulta SQL em VBA não aparece na minha listabox. Empty Consulta SQL em VBA naoa aparece na minha listabox.

    Mensagem  elmanojr 23/4/2021, 05:00

    Ok,
    Tentando novamente mandar o DB

    Valeu e obrigado pelas dicas
    avatar
    elmanojr
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 24
    Registrado : 20/07/2017

    Consulta SQL em VBA não aparece na minha listabox. Empty Consulta SQL em VBA naoa aparece na minha listabox.

    Mensagem  elmanojr 23/4/2021, 05:09

    Meu amigo ,
    por algum motivo que não sei não esta subindo o arquivo

    Estou colocando um link do google drive:
    https://drive.google.com/file/d/1flUnJe5CyRGhQTFeGOVssR9hxfmX5KMw/view?usp=sharing

    Não entendi pois estou fazendo certo como voce recomendou,
    Escolher arquivo ( Browse)
    esperar aparecer o nome e enviar

    Mesmo assim não esta indo...
    Espero que com o link acima do googledrive vc consiga baixar.

    Obrigado novamente.

    Alexandre Fim
    Alexandre Fim
    Developer
    Developer

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1772
    Registrado : 13/12/2016

    Consulta SQL em VBA não aparece na minha listabox. Empty Re: Consulta SQL em VBA não aparece na minha listabox.

    Mensagem  Alexandre Fim 23/4/2021, 13:58

    Elmano bom dia,

    O link que vc disponibilizou não dá acesso ao arquivo. Verifique

    []'s

    FIM

    Noobezinho
    Noobezinho
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4144
    Registrado : 29/06/2012

    Consulta SQL em VBA não aparece na minha listabox. Empty Re: Consulta SQL em VBA não aparece na minha listabox.

    Mensagem  Noobezinho 24/4/2021, 13:42

    Elmano

    Estamos aguardando o teu projeto para darmos continuidade na ajuda.

    Agora:

    Você feriu a 3ª regra do fórum:

    3. Não colocar diversas vezes a mesma dúvida.

    Procure evitar repetir isso novamente.

    Convido- o ler as regras nesse LINK

    Balem


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    Noobezinho
    Noobezinho
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4144
    Registrado : 29/06/2012

    Consulta SQL em VBA não aparece na minha listabox. Empty Re: Consulta SQL em VBA não aparece na minha listabox.

    Mensagem  Noobezinho 25/4/2021, 16:15

    Elmano

    Eis teu projeto

    O que estava pegando, era o fato de deixar a caixa de texto de busca invisível antes de ser digitado algo nela.

    O que ocorria é que ao clicar no botão de busca, ele não deixava a caixa de texto busca visível para receber

    o critério.

    Então essa caixa de texto de busca deve ficar visível antes de se clicar no botão de buscar.


    Mesmo com a caixa de texto visível, não dava pra digitar algo nela.

    E com ela sem dados,  a listbox não tinha o que mostrar.

    Balem
    Anexos
    Consulta SQL em VBA não aparece na minha listabox. AttachmentTesteControleProjetosNOOB.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (134 Kb) Baixado 6 vez(es)


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    elmanojr
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 24
    Registrado : 20/07/2017

    Consulta SQL em VBA não aparece na minha listabox. Empty Consulta SQL em VBA naoa aparece na minha listabox.

    Mensagem  elmanojr 26/4/2021, 01:26

    Noobezinho,

    Infelizmente não deu certo, meu amigo.

    Somente relembrando.

    O botão buscar dispara a sql baseado na combobox, neste caso "Campanhas"

    Então o campo txtNomeBusca pode ficar invisivel ou não pois somente depois que a SQL é executada e mostrar o resultado na listbox.
    Dai então sera feito a pesquisa do nome (registro) que aparece na listbox (baseado na tabela escolhida "Campanhas").
    Que devera ser feita atravez da txtNomeBusca e quando digitado o nome ir filtrando na listbox.

    Veja o exemplo do form Busca Geral... ali eu faço a busca direto no campo. sem a combobox.

    A cboBox é somente para selecionar a tabela onde será efetuada a busca, pois existe a possibilidade de escolha em varias tabelas.
    E o campo txtNomeBusca para fazer a filtragem do registro de procura na listbox apresentada.

    Não se me fiz entender, mas mesmo assim obrigado pela disposição...

    abraço
    Anexos
    Consulta SQL em VBA não aparece na minha listabox. AttachmenttesteControleProjetos.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (130 Kb) Baixado 3 vez(es)

      Data/hora atual: 18/9/2021, 17:37