Leandro_Pirozzi Postado Março 4, 2009 Denunciar Share Postado Março 4, 2009 alguém tem alguma function, onde quando eu estiver digitando por exemplo o nome de uma empresa ele me abra um grid com uma lista de empresas que iniciam com os mesmos caracteres, indo buscar a empresa do BD.obrigado. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Macêdo Postado Março 8, 2009 Denunciar Share Postado Março 8, 2009 Coloque no evento Change da textbox o select e logo abaixo dele o codigo para preencher o grid, no select coloque para buscar os nomes pela primeira letraPrivate Sub Text_busca_Change()Select nome from tabela where nome like '" & text_busca & "%'"preenche_gridEnd sub Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Leandro_Pirozzi Postado Março 9, 2009 Autor Denunciar Share Postado Março 9, 2009 mas a function que preenche o grid vai precisar de um outro select não vai? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Leandro_Pirozzi Postado Março 9, 2009 Autor Denunciar Share Postado Março 9, 2009 Declarei no general declarations:'carrega grid busca empresaDim cmdbusca As New ADODB.CommandDim cnnbusca As ADODB.ConnectionDim rsbusca As New ADODB.RecordsetSeguinte fiz a function. Não sei se está correta.Function preenchegrid_busca() With cmdbusca .ActiveConnection = cnnbusca 'nome da conexão .CommandType = adCmdText .CommandText = "SELECT CODEMP, NOMEMPRESA, ENDEMPRESA, CIDEMPRESA, UFEMPRESA, TELEMPRESA from CONTATOS_EMPRESA" 'seleciona os dados da tabela que vao para o grid Set rsbusca = .Execute End With With rsbusca Set frmpesq.DataGrid5.DataSource = rsbusca 'aqui já lança os dados no Datagrid5 End With End FunctionAgora no evento Change do text tem outro select??? porque quando compila e clico no text pra digitar algo ele exibe o erro:A conexao não pode ser usada para realizar esta operação.Ela esta fechada ou é invalida neste contexto.Private Sub txtempresa_Change()Dim SQLpreencebusca As StringSQLpreencebusca = "SELECT NOMEMPRESA from CONTATOS_EMPRESA where NOMEMPRESA like '" & txtempresa & "%'"frmpesq.Showpreenchegrid_buscaEnd Sub Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Leandro_Pirozzi Postado Março 9, 2009 Autor Denunciar Share Postado Março 9, 2009 Como faço para carregar por exemplo:O usuário esta digitando o nome da empresa: "TELEFONICA"Ai quando ele digitar Tele ele abre o grid com todas as empresas q iniciam com essas letras?Ate consegui fazer porem a cada caractere que é digitado ele abre o form com a grid. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Macêdo Postado Março 9, 2009 Denunciar Share Postado Março 9, 2009 Coloque o seguinte codigo no evento change da text, não precisa da function com outro select:Private Sub txtempresa_Change() With cmdbusca .ActiveConnection = cnnbusca 'nome da conexão .CommandType = adCmdText .CommandText = "SELECT CODEMP, NOMEMPRESA, ENDEMPRESA, CIDEMPRESA, UFEMPRESA, TELEMPRESA from CONTATOS_EMPRESA where NOMEMPRESA like '" & txtempresa & "%'" 'seleciona os dados da tabela que vao para o grid Set rsbusca = .Execute End With With rsbusca Set frmpesq.DataGrid5.DataSource = rsbusca 'aqui já lança os dados no Datagrid5 End With End Sub Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Leandro_Pirozzi Postado Março 10, 2009 Autor Denunciar Share Postado Março 10, 2009 Exibiu a msg.A operação solicitada requer um objeto OLE DB SESSION, para o qual não há suporte do provedor atual. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Leandro_Pirozzi
alguém tem alguma function, onde quando eu estiver digitando por exemplo o nome de uma empresa ele me abra um grid com uma lista de empresas que iniciam com os mesmos caracteres, indo buscar a empresa do BD.
obrigado.
Link para o comentário
Compartilhar em outros sites
6 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.