AJUDA COM PREENCHIMENTO DE LIST
Bom dia galera, preciso montar uma tela de pesquisa de produtos
Tenho uma text box e quero pegar oq for digitado nela, e ao clique pesquisar preencher list buscando a palavra que foi d igitada na tabela produto.
Oque ja fiz foi o seguinte
Private Sub txtDescricao_KeyPress(KeyAscii As Integer)
Dim varDesc As Integer
If KeyAscii = 39 Then KeyAscii = 0
If KeyAscii = 27 Then
op = MsgBox([Ô]DESEJA REALMENTE SAIR?[Ô], vbYesNo, [Ô]ATENÇÃO![Ô])
If op = vbYes Then
Unload Me
Else
Exit Sub
End If
End If
If KeyAscii = 13 Then
varDesc = Len(txtDescricao)
rsproduto.FindFirst Left(rsproduto!descricao, varDesc)
If Not rsproduto.NoMatch Then
enchelist
Else
MsgBox ([Ô]Lista de produtos não encontrado.[Ô] & Chr(10) & [Ô]Verifique se ele foi digitado corretamente!![Ô])
End If
End If
End Sub
Function enchelist()
List1.Clear
Do While Not rsproduto.EOF
Loop
Estou no caminho certo?
Como faço para terminar o preenchimento e a busca pela palavra dentro da descricao
Obrigado
Tenho uma text box e quero pegar oq for digitado nela, e ao clique pesquisar preencher list buscando a palavra que foi d igitada na tabela produto.
Oque ja fiz foi o seguinte
Private Sub txtDescricao_KeyPress(KeyAscii As Integer)
Dim varDesc As Integer
If KeyAscii = 39 Then KeyAscii = 0
If KeyAscii = 27 Then
op = MsgBox([Ô]DESEJA REALMENTE SAIR?[Ô], vbYesNo, [Ô]ATENÇÃO![Ô])
If op = vbYes Then
Unload Me
Else
Exit Sub
End If
End If
If KeyAscii = 13 Then
varDesc = Len(txtDescricao)
rsproduto.FindFirst Left(rsproduto!descricao, varDesc)
If Not rsproduto.NoMatch Then
enchelist
Else
MsgBox ([Ô]Lista de produtos não encontrado.[Ô] & Chr(10) & [Ô]Verifique se ele foi digitado corretamente!![Ô])
End If
End If
End Sub
Function enchelist()
List1.Clear
Do While Not rsproduto.EOF
Loop
Estou no caminho certo?
Como faço para terminar o preenchimento e a busca pela palavra dentro da descricao
Obrigado
Sim o caminho é esse mas tem [Ô]atalhos[Ô].
utilize comando SQL para o preenchimento do recordset:
rsproduto.open [Ô]select * from tabela where descricao LIKE [ô]%[Ô] & text1.text & [Ô][ô][Ô]
Depois basta povoar seu list com o resultado.
utilize comando SQL para o preenchimento do recordset:
rsproduto.open [Ô]select * from tabela where descricao LIKE [ô]%[Ô] & text1.text & [Ô][ô][Ô]
Depois basta povoar seu list com o resultado.
Obrigado pela a juda Edermir
ontem msm consegui uma ajuda com a instrução [Ô]like[Ô]
mas usei da seguitne forma
Function enchelist()
Set listproduto = db.OpenRecordset([Ô]SELECT * FROM produto WHERE DESCRICAO LIKE [ô]*[Ô] & txtDescricao & [Ô]*[ô] ORDER BY DESCRICAO[Ô], dbOpenDynaset)
List1.ListItems.Clear
Dim Item As ListItem
Do While Not listproduto.EOF
Set Item = List1.ListItems.Add
Item.Text = listproduto!codigo
[ô] SNCLIENTES.FindFirst [Ô]codigo =[Ô] & enche!CODCLI
Item.SubItems(1) = listproduto!DESCRICAO
Item.SubItems(2) = IIf(IsNull(listproduto!Modelo), [Ô][Ô], listproduto!Modelo)
Item.SubItems(3) = listproduto!precovenda
Item.SubItems(4) = IIf(IsNull(listproduto!ESTOQUE), 0, listproduto!ESTOQUE)
listproduto.MoveNext
Loop
End Function
Não i mporta oq tem antes ou depois
vlw
ontem msm consegui uma ajuda com a instrução [Ô]like[Ô]
mas usei da seguitne forma
Function enchelist()
Set listproduto = db.OpenRecordset([Ô]SELECT * FROM produto WHERE DESCRICAO LIKE [ô]*[Ô] & txtDescricao & [Ô]*[ô] ORDER BY DESCRICAO[Ô], dbOpenDynaset)
List1.ListItems.Clear
Dim Item As ListItem
Do While Not listproduto.EOF
Set Item = List1.ListItems.Add
Item.Text = listproduto!codigo
[ô] SNCLIENTES.FindFirst [Ô]codigo =[Ô] & enche!CODCLI
Item.SubItems(1) = listproduto!DESCRICAO
Item.SubItems(2) = IIf(IsNull(listproduto!Modelo), [Ô][Ô], listproduto!Modelo)
Item.SubItems(3) = listproduto!precovenda
Item.SubItems(4) = IIf(IsNull(listproduto!ESTOQUE), 0, listproduto!ESTOQUE)
listproduto.MoveNext
Loop
End Function
Não i mporta oq tem antes ou depois
vlw
Pergunta vc está usando ADO ou DAO?
Uso DAO
tente assim colega
Private Sub txtDescricao_KeyPress(KeyAscii As Integer)
Busca = [Ô]descricao like[ô][Ô] & txtDescricao.Text & [Ô]*[ô][Ô]
ListView1.ListItems.Clear [ô] limpa o list view para a nova pesquisa
REG_arq.FindFirst busca [ô] move para o primeiro registro
Do While REG_arq.NoMatch = False [ô]enquanto ele encontrar registros (NoMatch=False)
Set item = ListView1.ListItems.Add(, , lstproduto([Ô]codigo[Ô])) [ô] aqui sempre será o primeiro registro a ser exibido
Item.SubItems(1) = listproduto([Ô]descricao[Ô])
Item.SubItems(2) = IIf(IsNull(listproduto([Ô]Modelo[Ô])), [Ô][Ô], listproduto!Modelo)
Item.SubItems(3) = listproduto([Ô]precovenda[Ô])
Item.SubItems(4) = IIf(IsNull(listproduto([Ô]ESTOQUE[Ô])), 0, listproduto!ESTOQUE)
REG_arq.FindNext busca
LoopEnd Sub
Ah, desculpe por nao fechar o tópico, Obrigado Marcelo, mas como postei logo ali em cima, ja consegui terminar esse form. a função enchelist está postada logo acima..
e qual função aqui do site eu faço para postar o código dessa maneira que voce postou?
obrigado
e qual função aqui do site eu faço para postar o código dessa maneira que voce postou?
obrigado
colega no quadro de resposta basta vc selecionar to do código e clicar no [Ô]C[Ô] que aparece no canto direito au lado de bold, italico, etc
Obrigado, da proxima vez irei usar rs
Tópico encerrado , respostas não são mais permitidas