¿Cómo eliminar registros filtrados en un listbox y se vea reflejado en la hoja ?
Que tal amigos de todoexpertos.com, quisiera hacer una consulta acerca de ¿cómo eliminar registros filtrados en un listbox?, tengo un código para eliminación, pero después de aplicar un filtrado selecciono el item a eliminar y no me elimina correctamente.
En una hoja de excel manejo un formulario que busca información en un listbox, este formulario contiene dos botones; 1.- modificar, 2.- eliminar, el problema es con el segundo botón ya que cuando filtro registros y se encuentran dos o mas registros con un mismo código no me elimina el que selecciono sino el primero que encuentra, he estado dándole un par de vueltas y no logro resolverlo, espero me puedan brindar un poco de su ayuda para llegar a una solución. Desde ahora agradezco su tiempo, gracias.
Código de eliminación:
Private Sub UserForm_Initialize() Lista Range("B4").Select Combo_Criterio.Clear Do Until ActiveCell = "" Combo_Criterio.AddItem ActiveCell ActiveCell.Offset(, 1).Select Loop End Sub ´......................................................................... Sub Lista() 'le decimos cuántas columnas tendrá LisDts.ColumnCount = 15 'que sí que tiene encabezado LisDts.ColumnHeads = True 'el origen de datos en nuestra hoja de cálculo LisDts.RowSource = "Tabla1" End Sub ´......................................................................... Private Sub LisDts_Click() items = Me.LisDts.ListCount For i = 0 To items - 1 If Me.LisDts.Selected(i) Then filactiva = Me.LisDts.List(i) End If Next i End Sub ......................................................................... Private Sub CommandButton1_Click() If LisDts.ListIndex = -1 Then: Exit Sub If LisDts.List(LisDts.ListIndex, 0) = "" Then: Exit Sub If MsgBox("Deseal eliminar el " & LisDts.List(LisDts.ListIndex, 0) & "?", vbQuestion + vbYesNo) = vbYes Then Hoja1.Rows(LisDts.ListIndex + 5).Delete Lista ' Else Exit Sub End If End Sub
Muchas gracias Dante. Me sirvió la primera opción. - Oscar Fernando Alvarez Ortiz
Con gusto! - Dante Amor