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