Vídeo recomendado
https://youtu.be/diWPPPhW-9E
https://youtu.be/diWPPPhW-9E
formulário de pesquisa vba
formulário de pesquisa vba
Olá, espero estar no lugar correto para a pergunta.
Gostaria de saber como fazer um formulário de pesquisa, como o do modelo de cadastro que encontrei neste fórum.
Estou fazendo uma planilha para armazenar dados relativos à registro civil, e os usuários precisam efetuar pesquisas pelos nomes, ou pelo tipo de livro cadastrado (nascimento, casamento ou óbito).
O sistema de busca que preciso é parecido com o deste exemplo, porém mais simples. Os filtros que necessito são apenas nome e tipo de livro.
muito obrigada.
Gostaria de saber como fazer um formulário de pesquisa, como o do modelo de cadastro que encontrei neste fórum.
Estou fazendo uma planilha para armazenar dados relativos à registro civil, e os usuários precisam efetuar pesquisas pelos nomes, ou pelo tipo de livro cadastrado (nascimento, casamento ou óbito).
O sistema de busca que preciso é parecido com o deste exemplo, porém mais simples. Os filtros que necessito são apenas nome e tipo de livro.
muito obrigada.
Re: formulário de pesquisa vba
Jay,
Se entendi bem, mas simples significa menos campos certo? Se for isso mesmo, qual a dificuldade em alterar o form de pesquisa disponível no modelo cadastro?
De fato, entendo que para a maioria dos programadores puramente VBA, é um pouco mais chato de entender porque usei ADO em sua construção. Isso proporcionou um aproveitamento total do que o SQL fornece em termos de mecanismo de pesquisa. Há somente um "complicômetro" nessa história toda. A transposição de matrizes. Como retorno os dados para o código com o método GetRows do RecordSet e utilizo o controle ListBox, utilizado para demonstrar o resultado da pesquisa, a atribuição direta do GetRows para o List traria os dados invertidos (linhas no lugar das colunas).
Experimente comentar a seguinte linha:
Execute o form de pesquisa e veja o resultado.
A alternativa seria tratar a pesquisa e comparação de dados linha a linha, o que seria extremamente oneroso. De qualquer forma, deixo aqui a promessa de criar um modelo de form de pesquisa baseado somente nas rotinas do Excel, sem ADO e SQL e colocar para download no blog OK? Só não prometo para quando. É só ficar de olho no blog.
Abraços
Se entendi bem, mas simples significa menos campos certo? Se for isso mesmo, qual a dificuldade em alterar o form de pesquisa disponível no modelo cadastro?
De fato, entendo que para a maioria dos programadores puramente VBA, é um pouco mais chato de entender porque usei ADO em sua construção. Isso proporcionou um aproveitamento total do que o SQL fornece em termos de mecanismo de pesquisa. Há somente um "complicômetro" nessa história toda. A transposição de matrizes. Como retorno os dados para o código com o método GetRows do RecordSet e utilizo o controle ListBox, utilizado para demonstrar o resultado da pesquisa, a atribuição direta do GetRows para o List traria os dados invertidos (linhas no lugar das colunas).
Experimente comentar a seguinte linha:
Código: Selecionar todos
...
'troca linhas por colunas no Array
myArray = Array2DTranspose(myArray)
...
A alternativa seria tratar a pesquisa e comparação de dados linha a linha, o que seria extremamente oneroso. De qualquer forma, deixo aqui a promessa de criar um modelo de form de pesquisa baseado somente nas rotinas do Excel, sem ADO e SQL e colocar para download no blog OK? Só não prometo para quando. É só ficar de olho no blog.
Abraços
Re: formulário de pesquisa vba
Valeu Tomas.
Eu mudei o form de pesquisa do modelo, mas mesmo assim não funcionou. No depurador o erro começa por lstLista.ListIndex em diante. Adaptei as variáveis, os nomes, os campos, mas não rodou.
Eu sei que faltou conhecimento mesmo, mas estou estudando tudo que encontro.
Agradeço muito a ajuda mesmo.
Eu mudei o form de pesquisa do modelo, mas mesmo assim não funcionou. No depurador o erro começa por lstLista.ListIndex em diante. Adaptei as variáveis, os nomes, os campos, mas não rodou.
Eu sei que faltou conhecimento mesmo, mas estou estudando tudo que encontro.
Agradeço muito a ajuda mesmo.
-
- Colaborador
- Mensagens: 19
- Registrado em: Sex Set 18, 2009 8:16 pm
- Localização: Pelotas - RS
Re: formulário de pesquisa vba
Tomas, boa noite!
Parabéns pelo trabalho aqui apresentado. Sou leigo no assunto mas tenho aprendido muito lendo seus artigos.
Baxei a panilha e funcionou muito bem, fiz algumas adaptções para o que preciso, porem gostaria de fazer a pesquisa somente por uma variavel, como por exemplo CPF, (campo nome de contato, substitui por CPF). Podes ajudar? Abraços
Silmar
Parabéns pelo trabalho aqui apresentado. Sou leigo no assunto mas tenho aprendido muito lendo seus artigos.
Baxei a panilha e funcionou muito bem, fiz algumas adaptções para o que preciso, porem gostaria de fazer a pesquisa somente por uma variavel, como por exemplo CPF, (campo nome de contato, substitui por CPF). Podes ajudar? Abraços
Silmar
-
- Colaborador
- Mensagens: 19
- Registrado em: Sex Set 18, 2009 8:16 pm
- Localização: Pelotas - RS
Re: formulário de pesquisa vba
Tomas,
Acabo de descubrir que funciona o filtro por CPF(ou melhor nome de contato) entretanto não consigo rodar a planilha no excel da empresa dá um erro de SQL usamos o windows 98 sera a versão do excel, com posso solucionar o problema.
Acabo de descubrir que funciona o filtro por CPF(ou melhor nome de contato) entretanto não consigo rodar a planilha no excel da empresa dá um erro de SQL usamos o windows 98 sera a versão do excel, com posso solucionar o problema.
Re: formulário de pesquisa vba
Jay,
Para poder ajudar, preciso saber do erro com mais detalhes. Pode dizer como ficou o código e a linha onde deu o erro?
Abraços
Para poder ajudar, preciso saber do erro com mais detalhes. Pode dizer como ficou o código e a linha onde deu o erro?
Abraços
Re: formulário de pesquisa vba
Silmar,
O problema é na sintaxe do SQL ou no acesso às bibliotecas do ADO?
Confira no menu Ferramentas->Referências do VBA se há alguma referência marcada como AUSENTE.
Abraços
O problema é na sintaxe do SQL ou no acesso às bibliotecas do ADO?
Confira no menu Ferramentas->Referências do VBA se há alguma referência marcada como AUSENTE.
Abraços
Re: formulário de pesquisa vba
Colegas,
Postei no blog um exemplo que pode ajudá-los:
http://www.tomasvasquez.com.br/blog/mic ... no-listbox
Espero que ajude.
Abraços
Postei no blog um exemplo que pode ajudá-los:
http://www.tomasvasquez.com.br/blog/mic ... no-listbox
Espero que ajude.
Abraços
-
- Colaborador
- Mensagens: 19
- Registrado em: Sex Set 18, 2009 8:16 pm
- Localização: Pelotas - RS
Re: formulário de pesquisa vba
Tomas,
Vou copiar o erro amanhã lá na empresa e e breve público. Grato pela atenção.
Há fiz adaptações na planilha do Ricardo Horta e rodou muito bem lá na empresa, só não achei interessante a forma de pesquisa porque quando se digita a primeira letra de um nome puxa os dados do primeiro nome com esta letra e dos demais tem que puxar na caixa de rolagem , não achei pratico, creio que deveria pedir para digitar o primeiro e segundo nome ou dado como CPF.
Abraços
Vou copiar o erro amanhã lá na empresa e e breve público. Grato pela atenção.
Há fiz adaptações na planilha do Ricardo Horta e rodou muito bem lá na empresa, só não achei interessante a forma de pesquisa porque quando se digita a primeira letra de um nome puxa os dados do primeiro nome com esta letra e dos demais tem que puxar na caixa de rolagem , não achei pratico, creio que deveria pedir para digitar o primeiro e segundo nome ou dado como CPF.
Abraços
Re: formulário de pesquisa vba
Silmar,
São opções. Cada um desenvolve como acha mais prático, ou conforme o usuário pede. No caso da planilha que desenvolvi, escolhi fazer algo mais completo, porém, alguns usuários acham complicado demais. Vai do gosto.
Abraços
São opções. Cada um desenvolve como acha mais prático, ou conforme o usuário pede. No caso da planilha que desenvolvi, escolhi fazer algo mais completo, porém, alguns usuários acham complicado demais. Vai do gosto.
Abraços