Generar una lista a partir de una tabla

Tengo una tabla de datos.

Lo que necesito es que en otra hoja al seleccionar a, b, o c en una celda de una lista desplegable (eso lo se hacer), me traiga la lista de cat y def con los valores para a, pero que solo traiga los que tienen valor para a.

En el ejemplo abajo muestro en amarillo lo que se debería generar automáticamente al seleccionar a en A1.

1 Respuesta

Respuesta
1

H o l a:

Pon la siguiente macro en los eventos de tu "otra hoja", es decir, en la hoja donde quieres los resultados. Cambia en la macro "tabla" por el nombre de tu hoja que tiene los datos.

Private Sub Worksheet_Change(ByVal Target As Range)
'Por.Dante Amor
    If Target.Count > 1 Then Exit Sub
    If Target.Address(False, False) = "A1" Then
        u = Range("A" & Rows.Count).End(xlUp).Row
        If u < 4 Then u = 4
        Range("A4:C" & u).ClearContents
        Set h1 = Sheets("tabla")
        Set b = h1.Rows(1).Find(Target, lookat:=xlWhole)
        j = 4
        If Not b Is Nothing Then
            col = b.Column
            For i = 2 To h1.Range("A" & Rows.Count).End(xlUp).Row
                If h1.Cells(i, col) <> "" Then
                    Cells(j, "A") = h1.Cells(i, "A")
                    Cells(j, "B") = h1.Cells(i, "B")
                    Cells(j, "C") = h1.Cells(i, col)
                    j = j + 1
                End If
            Next
        End If
    End If
End Sub

Cada que cambies un valor en la celda A1 de tu "otra hoja", en automático te pondrá los datos a partir de la fila 4.


Sigue las Instrucciones para poner la macro en los eventos de worksheet

  1. Abre tu libro de excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet(tu hoja)
  4. En el panel del lado derecho copia la macro

':)
':)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas