Buscar datos por medio de un label

Me gustaría saber si es posible; que al cargar un dato en un label de un formulario este me realice una búsqueda en una hoja y me cargue los datos de la columna con el dato del label en un listbox siendo una búsqueda inteligente pues solo cargara los datos de la fila que contenga el dato del label gracias y envío una imagen para poderme hacer entender mejor

1 respuesta

Respuesta
1

No se ven los datos de la hoja. Puedes poner la imagen de tu hoja.

Cuál es el Label a considerar y cómo estás llenando ese Label.

Qué datos se deben cargar, tu imagen del userform está vacía, puedes poner el ejemplo para ver qué datos quieres cargar y en dónde los quieres poner.

Y esta parte no la entiendo:

Y me cargue los datos de la columna con el dato del label en un listbox

Buen día master! Muy agradecido por su loable respuesta me hago entender mejor con el paso a paso.

1. En un formulario (DIFERENTE) el cual al dar dobleclic al listbox me envía con el dato de la columna 3 al label del formulario (mi pregunta). Este es el código..

Private Sub List_recetas_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Dim X As Long

With Me.List_recetas

X = .ListIndex
Frm_informerece.Lbl_titulonomrece = .List(X, 2)
End With
Frm_informerece.Show
End Sub   '''''---------> adjunto imagen del formulario con datos en listbox al dar dobleclic me lleva a otro formulario..

2. Cuando se carga el otro formulario (mi pregunta) me carga el label con el dato requerido y es en este formulario que con el nombre de ese label cargado lo busque en la hoja y cargue los datos de la columna H:I adjunto la imagen...

3. Haciendo pruebas puedo llegar hasta aquí... pero no es la columna deseada el nombre de dato de ese label... esta; en esta hoja y de allí es que debe cargar los datos de la fila que tenga ese nombre H:I en el listbox en el ejemplo al dar clic en el botón ver (VERDUR DEL CHUZO). Solo aparezca los datos de la fila que tiene el nombre del label

 gracias maestro espero me haya hecho entender....

Dim a As Variant
Private Sub Btn_informerece_Click()
On Error Resume Next
Dim strDescripcion As String
Call FilterData
'          With Application.WorksheetFunction
'          strDescripcion = .VLookup((Me.List_informe.Value), Hoja5.Range("A:H").CurrentRegion, 8, False)
'          End With
End Sub
Private Sub UserForm_Initialize()
  With Me
        '
        .lblLink.ControlTipText = "Ir a Formulario de recetas de sopas"
        .lblLink.ForeColor = &HFF0000
        '
    End With
'   List_informe.ColumnCount = 4
'  a = Sheets(Hoja6.Name).Range("A2", Sheets(Hoja6.Name).Range("D" & Rows.Count).End(3)).Value
   a = Range("A2").CurrentRegion.Value
 List_informe.ColumnCount = UBound(a, 2)
End Sub
Sub FilterData()
  Dim lbl As String, txt As String
  Dim b As Variant
  Dim i As Long, j As Long
  ReDim b(1 To UBound(a), 1 To 2)
 List_informe.Clear
  For i = 2 To UBound(a)
    If Lbl_titulonomrece = "" Then lbl = a(i, 8) Else lbl = Lbl_titulonomrece
    'If TextBox1.Value = "" Then txt = a(i, 1) Else txt = TextBox1.Value
     If LCase(a(i, 4)) Like "*" & LCase(lbl) & "*" Then
'    If a(i, 4) = Lbl_titulonomrece.Text And LCase(a(i, 1)) Like LCase(txt) & "*" Then
      j = j + 1
'      b(j, 1) = a(i, 1)
      b(j, 2) = a(i, 4)
    End If
  Next i
  If j > 0 Then List_informe.List = b
End Sub

No puedo hacer pruebas porque no tengo los formularios ni los datos. Pero revisando el código, realiza lo siguiente:

Cambia estas líneas:

'      b(j, 1) = a(i, 1)
      b(j, 2) = a(i, 4)

Por estas:

b(j, 1) = a(i, 8)
b(j, 2) = a(i, 9)

Prueba y comentas.

Muchas gracias maestro por su respuesta!... pero NO me realiza lo buscado debido a que mi código saca todos los datos de la columna y lo requerido es sacar los datos de la fila que tiene el nombre de la hoja según la imagen y que se carga en el label; por ejemplo columna DE se carga en el label el nombre(VERDUR DEl CHUZO), en la fila que esta este nombre que pueden ser 3,4,5 filas con este mismo nombre. Cargar los datos que tengan este nombre en la hoja; en el listbox que los datos están en las columnas (H, I) de la hoja, de nuevo mil gracias MASTER!------>

He aplicado este script y no hace la búsqueda queda en blanco el listbox!

' With Application.WorksheetFunction
' strDescripcion = .VLookup((Me.List_informe.Value), Hoja5.Range("A:H").CurrentRegion, 8, False)
' End With

Comparte tu archivo en google drive, pega aquí el enlace para revisarlo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas