Eliminar Registros seleccionados de un listbox multiselect y de la hoja excel

Tengo un formulario con el listbox multi seleccion con el cual pretendo eliminar uno, o varios registros seleccionados a la vez, y al mismo tiempo elimine los registros de la hoja excel.

Private Sub CommandButton1_Click()

'Con este código solo se elimina uno registro a la vez 

If ListBox1.ListIndex = -1 Then
Exit Sub 'si no se seleccionó ningún item cancela
End If
Rem fila = ListBox1.ListIndex + 1
fila = ListBox1.ListIndex + 2
Rows(fila).Delete Shift:=xlUp

ListBox1.RemoveItem (ListBox1.ListIndex)
End Sub

''con este código cargo los datos

Private Sub UserForm_Initialize()
Dim i As Integer, ul As Integer
With Me.ListBox1
.ColumnCount = 10
.ColumnWidths = "20 pt;55 pt;25 pt;30 pt;50 pt;60 pt;180 pt;60 pt;50 pt;5 pt"
End With

ul = Range("a65500").End(xlUp).Row

For i = 2 To ul
With Me.ListBox1
.AddItem
.List(.ListCount - 1, 0) = Format(Cells(i, 1), "000")
.List(.ListCount - 1, 1) = Cells(i, 2)
.List(.ListCount - 1, 2) = Format(Cells(i, 4), "00")
.List(.ListCount - 1, 3) = Format(Cells(i, 5), "0000")
.List(.ListCount - 1, 4) = Format(Cells(i, 7), "00000000")
.List(.ListCount - 1, 5) = Cells(i, 9)
.List(.ListCount - 1, 6) = Cells(i, 10) & " "
.List(.ListCount - 1, 7) = Format(Cells(i, 18), "#,###.00")
.List(.ListCount - 1, 8) = Cells(i, 30)
End With
Next i
End Sub

Quisiera subir el archivo pero no encuentro la opción para subirlo.

1 Respuesta

Respuesta
1

He encontrado la solución en una página que adjunto abajo, modifique la macro y funciona perfecto.

Private Sub CommandButton1_Click()
Dim n As Long, i As Long
Dim var As Variant
For n = ListBox1.ListCount - 1 To 0 Step -1
If ListBox1.Selected(n) = True Then
var = ListBox1.List(n, 0)
ListBox1.RemoveItem (n)
i = Application.Match(var, Hoja3.Range("A:A"), 0)
Hoja3.Cells(i, 1).EntireRow.Delete
End If
Next n

End Sub

aquí el link de la fuente del codigo vba excel

http://www.globaliconnect.com/excel/index.php?option=com_content&view=article&id=128:excel-userform-controls-combobox-and-listbox-additem-method-boundcolumn-list-property-listindex-rowsource-selected-property

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas