Leandro, boa tarde.
Desta maneira que você repassou, funcionou perfeitamente.
Porém incrementando outros formulários na planilha, a parte para fazer o recebimento está dando um erro.
O processo de funcionamento da planilha é a seguinte:
Guia ForMatPri armazena Codigo do Produto, Nome do Produto, Unidade de Medida, Codigo do Fornecedor e Nome do Fornecedor.
Ao lançar o recebimento de mercadoria, quando digita o nome do produto, na caixa de listagem ele preenche os dados da guia formatpri, e ao clicar em cima do produto desejado, ele preenche os textbox.
Segue o arquivo em anexo
Private Sub Pesquisa_Change()
valor_pesquisa = Pesquisa.Text
Dim guia As Worksheet
Dim linha As Integer
Dim coluna As Integer
Dim linhalistbox As Integer
Dim valor_celula As String
'Dim linhalistbox As String
'Dim coluna As String
'Dim linha As String
Set guia = ThisWorkbook.Worksheets("ForMatPrim")
linhalistbox = 0
linha = 2 'linha de inicio dos dados
coluna = 2 'coluna referente busca de produtos
InfoMatPrima.Clear
'guia.Select
With guia
While .Cells(linha, coluna).Value <> Empty 'enquanto for diferente de vazio faça
valor_celula = .Cells(linha, coluna).Value 'recebe o valor da célula para fazer o teste
'Condição para satisfazer a busca tem que ser igual ao valor da texbox3
If InStr(UCase(valor_celula), UCase(valor_pesquisa)) <> Empty Then
With InfoMatPrima
.AddItem
.List(linhalistbox, 0) = guia.Cells(linha, 1)
.List(linhalistbox, 1) = guia.Cells(linha, 2)
.List(linhalistbox, 2) = guia.Cells(linha, 3)
'.List(linhalistbox, 3) = guia.Cells(linha, 4)
'.List(linhalistbox, 3) = guia.Cells(linha, 5)
End With
linhalistbox = linhalistbox + 1
End If
linha = linha + 1
Wend
End With
End Sub
Postado : 09/01/2018 11:54 am