Limpiar el ListBox al seleccionar otra opción en el ComboBox1 para consulta

Hola dante… de nuevo solicitando tu apoyo… tengo esta macro que en el ListBox1 recupera datos, tu apoyo es que con una función limpie estos datos en el ListBox cuando en la misma sesión, se seleccione otra opción en el ComboBox1, o en el ComboBox2 o cuando se oprima de nuevo el Botón “buscar”… de nuevo muchas gracias por tus aportes…

Private Sub CommandButton1_Click()

'Act.Por.Dante Amor

    Application.ScreenUpdating = False

     ListBox1 = Empty

    For Each h In Sheets

      '  n = h.Name

        If UCase(h.Name) = UCase(ComboBox1) Then

            existe = True

            Exit For

        End If

    Next

    If existe = False Then

        MsgBox "La hoja seleccionada no existe", vbCritical, "SELCCIONAR OBRA"

        Exit Sub

        ComboBox1.SetFocus

    End If

   ListBox1.ColumnCount = 3

'IDENTIFICA DATOS GENERALES DE LA OBRA SELECCIONADA

Set h1 = Sheets(ComboBox1.Value)

 TextBox1 = h1.Range("D3") ' OBRA

 TextBox2 = h1.Range("D4") ' UBICACIÓN, LOCALIZACION

 TextBox3 = h1.Range("D5") ' MUNICIPIO

'Busca el nombre del proveedor y lo coloca en el TxBx4

    Set b = h1.Columns("A").Find(ComboBox2, lookat:=xlWhole)

    If Not b Is Nothing Then

TextBox4 = h1.Cells(b.Row, "A")

j = 8

        Do While h1.Cells(b.Row, j) <> ""

            ListBox1.AddItem

            ListBox1.List(ListBox1.ListCount - 1, 0) = h1.Cells(b.Row, j)

            ListBox1.List(ListBox1.ListCount - 1, 1) = h1.Cells(b.Row, j + 1)

            ListBox1.List(ListBox1.ListCount - 1, 2) = h1.Cells(b.Row, j + 2)

            wtot = wtot + Val(h1.Cells(b.Row, j + 2))

            j = j + 3

        Loop

Label5 = wtot

ComboBox1 = Empty

ComboBox2 = Empty

ListBox1 = Empty

Application.ScreenUpdating = True

End Sub

1 respuesta

Respuesta
1

Al inicio de cada evento pon la instrucción

Listbox1. Clear

Prueba y me comentas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas