Ir para o registro ...
 
Notifications
Clear all

Ir para o registro da consulta listbox

3 Posts
2 Usuários
0 Reactions
1,045 Visualizações
(@kades)
Posts: 4
New Member
Topic starter
 

Alguém pode me dar uma luz quanto a meu código. Tenho dois forms e quando faço a consulta no segundo, gostaria de ao selecionar um registro específico na listbox, no form1 fossem carregados os dados do registro selecionado. A consulta faço assim, baseado no nome do cliente na coluna B, mas o índice do registro está na coluna A (código). Como faço o evento onclick do listbox?

Grato

Sub pesquisa()
    
LBOX_BUSCAR.Clear

Dim ultimaLinha As Long
Dim linha As Integer

ultimaLinha = Plan2.Range("A3000").End(xlUp).Row

For linha = 2 To ultimaLinha
    If Plan2.Cells(linha, 2) = UCase(CMB_BUSCAR) Then
    LBOX_BUSCAR.AddItem Plan2.Range("A" & linha)
    LBOX_BUSCAR.List(LBOX_BUSCAR.ListCount - 1, 0) = Plan2.Range("A" & linha)
    LBOX_BUSCAR.List(LBOX_BUSCAR.ListCount - 1, 1) = Plan2.Range("B" & linha)
    LBOX_BUSCAR.List(LBOX_BUSCAR.ListCount - 1, 2) = Plan2.Range("C" & linha)
    End If
Next
    
End Sub
 
Postado : 08/05/2015 6:16 am
(@srobles)
Posts: 231
Estimable Member
 

fala kades, blza cara?

Eu costumo usar da seguinte maneira :

No evento click do listbox :
' Percorre toda a planilha até a ultima linha que contenha valores
For i = 2 To ActiveSheet.UsedRange.Rows.Count
'Seleciona a segunda linha da coluna B
Cells(i, "B").Select
' Se o valor da celula ativa for igual ao listbox então
If Cells(i, "B").Value = ListBox1.Text Then
'Carrega os controles do form1 com os valores de cada celula da linha ativa
UserForm1.TextBox1 = Cells(i, "A").Value
UserForm1.TextBox2 = Cells(i, "B").Value
UserForm1.TextBox3 = Cells(i, "C").Value
UserForm1.TextBox4 = Cells(i, "D").Value
'Se a busca for feita apenas para um unico registro sai do for
Exit For
End If
Next i
'Descarrega o Form2
Unload Userform2

Teste aí e nos mantenha informado ok?

[]'s

Saulo

Espero ter ajudado.

Abs.

Saulo Robles

 
Postado : 12/05/2015 4:19 pm
(@srobles)
Posts: 231
Estimable Member
 

Fiquei na duvida se era isso que procurava kades, já que aparentemente vc tem um listbox com mais de uma coluna.

No caso, se o listbox tiver mais de uma coluna a sintaxe que uso é a que segue:

userform1.textbox1 = me.listbox1.list(me.listbox1.listindex, coluna)

Porém com o codigo anterior, vc realiza uma busca na planilha pelo valor que vc setar.

[]'s

Saulo

Espero ter ajudado.

Abs.

Saulo Robles

 
Postado : 12/05/2015 5:55 pm