DIGITAR QUALQUER PARTE DO NOME E SOBRENOME

 Tópico anterior Próximo tópico Novo tópico

DIGITAR QUALQUER PARTE DO NOME E SOBRENOME

VB / VBA

 Compartilhe  Compartilhe  Compartilhe
#491369 - 20/11/2019 18:41:07

RICARDOPIBU
CABO FRIO
Cadast. em:Março/2018


Olá!
Estou procurando algum tempo como posso digitar qualquer parte do nome e sobrenome e ai acho na lista da Combobox.

Exemplo:
tenho vários nomes na lista da combobox, como:
Aline da Silva Fernandes
Bruno mota de Carvalho
Carlos Eduardo Morais
Maria Clara Gomes da Silva
Pedro Henrique Neves
.
.
E por ai vai,
daí digamos q ao puxar os nomes minha lista venha com mais de mil nomes...

quero localizar: Carlos Eduardo Morais

Mas só Lembro do Morais, é ai que eu preciso de ajuda, como posso fazer pra digitar na combobox "Morais" e ele localizar "Carlos Eduardo Morais"?

como eu faço atualmente:

'No Form Load vai isso:
___________________________________________________________________________________
Private Sub Form_Load()

connectDB
rs.OpDB
rs.Open "SELECT * from TBCadastroAlunoEBD", db, 3, 3
Do Until rs.EOF
   cbxBuscar.AddItem "" & rs!Nome
   rs.MoveNext
Loop
Set rs = Nothing
    db.Close: Set db = Nothing

End Sub
______________________________________________________________________________________

'TBCadastroAlunoEBD: nome da minha tabela no access.
'cbxBuscar: Combobox que recebe os nomes advindos da tabela.
'rs!Nome: Campo onde armazena os nomes na tabela.



Agora no evento Click da combobox, vai isso ai:

_________________________________________________________________________________________________________
Private Sub cbxBuscar_Click()

If cbxBuscar = "" Then
MsgBox "DIGITE UM NOME VÁLIDO OU A INICIAL DO NOME", vbInformation, "CADASTRO DE ALUNOS"
cbxBuscar.SetFocus
Exit Sub
End If

If cbxBuscar = "'" Then
   cbxBuscar = "[Selecione]"
   'cbxBuscar.SetFocus
Exit Sub
End If

ListView1.ListItems.Clear
connectDB
rs.Open "SELECT *from TBCadastroAlunoEBD WHERE NOME Like'" & cbxBuscar.TEXT & "%' Order by Nome", db, 3, 3
Do Until rs.EOF
Set item = ListView1.ListItems.Add(, , rs!Codigo)
item.SubItems(1) = "" & rs!Nome
item.SubItems(2) = "" & rs!Telefone
item.SubItems(3) = "" & rs!DataCad
item.SubItems(4) = "" & rs!Endereco
item.SubItems(5) = "" & rs!Bairro
item.SubItems(6) = "" & rs!Cidade
item.SubItems(7) = "" & rs!Estado
item.SubItems(8) = "" & rs!nascimento
item.SubItems(9) = "" & rs!Idade
item.SubItems(10) = "" & "" & rs!CodFotos
rs.MoveNext
Loop
ColorCadAlunosEBD
FechaDB

End Sub
__________________________________________________________________________________________________________

Todo esses comandos ai funcionam perfeitamente, porém, só chama as primeira letras do nome.

Quem puder ajudar, ficarei grato!





#491371 - 20/11/2019 19:21:10

JABA
CABO FRIO
Cadast. em:Agosto/2005


Última edição em 20/11/2019 19:23:23 por JABA

Coloque porcentagem na frente do texto buscado também, conforme está abaixo:

rs.Open "SELECT *from TBCadastroAlunoEBD WHERE NOME Like '%" & cbxBuscar.TEXT & "%' Order by Nome", db, 3, 3


www.w3schools.com/sql/sql_like.asp

_______________________________________________________________________________________________

Se a alma ou espírito são imateriais, como eles fazem para se localizarem quando o corpo está em movimento?



#491372 - 20/11/2019 19:28:30

RICARDOPIBU
CABO FRIO
Cadast. em:Março/2018


Citação:
:
Coloque porcentagem na frente do texto buscado também, conforme está abaixo:

rs.Open "SELECT *from TBCadastroAlunoEBD WHERE NOME Like '%" & cbxBuscar.TEXT & "%' Order by Nome", db, 3, 3


www.w3schools.com/sql/sql_like.asp



Também não deu certo, continuou buscado o só pelo primeiro nome, gostaria que ele buscasse primeiro nome, sobrenome, ou seja, qualquer parte!
Mas de qualquer jeito agradeço muito!



#491373 - 20/11/2019 19:44:33

JABA
CABO FRIO
Cadast. em:Agosto/2005


Última edição em 20/11/2019 19:48:33 por JABA

O simbolo que é para colocar depois do operador LIKE vai depender do banco de dados. Cada banco tem um tipo de simbolo. Se for ACCESS, é só ver qual deles atende o seu caso no link abaixo. Abaixo um exemplo com o asterisco.

rs.Open "SELECT *from TBCadastroAlunoEBD WHERE NOME Like '*" & cbxBuscar.TEXT & "*' Order by Nome", db, 3, 3


support.office.com/pt-pt/article/utilizar-o-crit%C3%A9rio-like-para-localizar-dados-65b07c8a-b314-435a-8b48-2b911856d4f9


_______________________________________________________________________________________________

Se a alma ou espírito são imateriais, como eles fazem para se localizarem quando o corpo está em movimento?



#491382 - 21/11/2019 09:11:17

FOXMAN
BARRETOS
Cadast. em:Janeiro/2001


Membro da equipe
Citação:
:
:
Coloque porcentagem na frente do texto buscado também, conforme está abaixo:

rs.Open "SELECT *from TBCadastroAlunoEBD WHERE NOME Like '%" & cbxBuscar.TEXT & "%' Order by Nome", db, 3, 3


www.w3schools.com/sql/sql_like.asp


Também não deu certo, continuou buscado o só pelo primeiro nome, gostaria que ele buscasse primeiro nome, sobrenome, ou seja, qualquer parte!
Mas de qualquer jeito agradeço muito!


Mas, me responde uma coisa....
A sua tabela tem campo Nome e campo Sobrenome separados ?????
Se sua resposta for SIM, faça da seguinte maneira :

SELECT * from TBCadastroAlunoEBD WHERE NOME LIKE '*" & cbxBuscar.TEXT & "*' OR SOBRENOME LIKE  '*" & cbxBuscar.TEXT & "*' Order by Nome"




Grupo DotNet.Br no FaceBook

Grupo WhatsDev



#491593 - 28/11/2019 17:20:13

RICARDOPIBU
CABO FRIO
Cadast. em:Março/2018


Citação:
:
:
:
Coloque porcentagem na frente do texto buscado também, conforme está abaixo:

rs.Open "SELECT *from TBCadastroAlunoEBD WHERE NOME Like '%" & cbxBuscar.TEXT & "%' Order by Nome", db, 3, 3


www.w3schools.com/sql/sql_like.asp


Também não deu certo, continuou buscado o só pelo primeiro nome, gostaria que ele buscasse primeiro nome, sobrenome, ou seja, qualquer parte!
Mas de qualquer jeito agradeço muito!

Mas, me responde uma coisa....
A sua tabela tem campo Nome e campo Sobrenome separados ?????
Se sua resposta for SIM, faça da seguinte maneira :

SELECT * from TBCadastroAlunoEBD WHERE NOME LIKE '*" & cbxBuscar.TEXT & "*' OR SOBRENOME LIKE  '*" & cbxBuscar.TEXT & "*' Order by Nome"



Não tem um capo sobrenome separado... e até agora não consegui fazer o que quero... vejo isso possível em outras linguagens mas no VB, parece ser difícil!

o que eu preciso:
Tenho um campo na tabela chamado "Nome", e nesse campo guardo os nomes do cadastro, e se por exemplo eu buscar o cadastro pelo nome (numa combobox), gostaria que fosse assim:
Nome guardado no campo da tabela:
"Ricardo Araujo da Silva"

Digito na combobox:
"Silva"
Daí acha:
"Ricardo Araujo da Silva"





#491597 - 28/11/2019 19:52:11

DAMASCENO.CESAR
ADAMANTINA
Cadast. em:Fevereiro/2009


faça um replace nos espaços em branco entre o nome e o sobrenome e substitui por "%" ou "*" (sem aspas) de acordo com o seu banco de dados

O conhecimento é como o dinheiro: quanto mais temos, mais queremos ter (Josh Billings)  


#491598 - 28/11/2019 19:57:31

DAMASCENO.CESAR
ADAMANTINA
Cadast. em:Fevereiro/2009


já vi assim também:
SELECT * from TBCadastroAlunoEBD WHERE NOME LIKE '" & "%" & cbxBuscar.TEXT & "*" &  "' Order by Nome"
experimenta

O conhecimento é como o dinheiro: quanto mais temos, mais queremos ter (Josh Billings)  


#491600 - 28/11/2019 23:28:49

OMAR2011
MONTES CLAROS
Cadast. em:Setembro/2011


Última edição em 28/11/2019 23:32:29 por OMAR2011

Jaba, qual Banco atende este tipo de Consulta Sql.
rs.Open "SELECT *from TBCadastroAlunoEBD WHERE NOME Like '*" & cbxBuscar.TEXT & "*' Order by Nome", db, 3, 3
Sinceramente eu não lembro disto.
E sim, tabela.find




#491601 - 28/11/2019 23:51:14

FOXMAN
BARRETOS
Cadast. em:Janeiro/2001


Membro da equipe
Citação:
:
Jaba, qual Banco atende este tipo de Consulta Sql.
rs.Open "SELECT *from TBCadastroAlunoEBD WHERE NOME Like '*" & cbxBuscar.TEXT & "*' Order by Nome", db, 3, 3
Sinceramente eu não lembro disto.
E sim, tabela.find


Cara sinceramente eu NÃO SEI QUAL É O SEU PROBLEMA ????
Não seria mais FÁCIL, vc apontar o erro, informando para o USUARIO que ele colocou a P@#@#$ DO * JUNTO  com o FROM ??????
Quando falo que vc polui o forum , você não acredita....

Observa lá em cima, e veja a minha resposta para o cara....
Veja se o meu select traz o * junto com o FROM ????
Ai analise o meu comentário.....

E me responda....
O que a sua resposta CONTRIBUIU para o tópico ??????




Grupo DotNet.Br no FaceBook

Grupo WhatsDev



#491602 - 28/11/2019 23:55:26

FOXMAN
BARRETOS
Cadast. em:Janeiro/2001


Membro da equipe

Última edição em 29/11/2019 00:02:02 por FOXMAN

OMAR2011,
Será que vc conseguiu observar que ele está fazendo corretamente num primeiro momento ??????

Citação:
  Private Sub Form_Load()
connectDB
rs.OpDB
rs.Open "SELECT * from TBCadastroAlunoEBD", db, 3, 3
Do Until rs.EOF
   cbxBuscar.AddItem "" & rs!Nome
   rs.MoveNext
Loop
Set rs = Nothing
    db.Close: Set db = Nothing

End Sub


Citação:
:
Jaba, qual Banco atende este tipo de Consulta Sql.
rs.Open "SELECT *from TBCadastroAlunoEBD WHERE NOME Like '*" & cbxBuscar.TEXT & "*' Order by Nome", db, 3, 3
Sinceramente eu não lembro disto.
E sim, tabela.find

Para seu governo no MYSQL funciona.....
Vc pelo menos viu que mesmo errado o cara conseguiu buscar pelo PRIMEIRO NOME ???????
Por acaso vc já executou uma SQL no MySQL, colocando exatamente como o usuário do post colocou ???
string sql = "select *from suatabela;"

Para seu GOVERNO funciona(pelo menos no MySql).

Seja mais produtivo para o FORUM....



Grupo DotNet.Br no FaceBook

Grupo WhatsDev



 Tópico anterior Próximo tópico Novo tópico


Para responder este tópico o login é requerido
Se você já possui uma conta de usuário por favor faça seu login
Se você não possui uma conta de usuário use a opção Criar usuário