Veremos una sencilla forma de eliminar elementos dentro de un ListBox en un UserForm (formulario de usuario), siempre y cuando se hayan cargado empleando el método .AddItem !!...
Esto, por tanto, no será válido para datos cargados con la propiedad .RowSource.
Tenemos un formulario con un ListBox llamado 'LstPais'
Para cargar los datos desde nuestra Tabla de países en la hoja de cálculo, asociaremos al evento _Initialize con el método .AddItem.
Mientras que asociado al evento Doble Clic (_DblClick) conseguiremos que el elemento sobre el que realicemos dicha acción se elimine...
Así pues añadimos los siguiente códigos dentro de la ventana de código de nuestro UserForm en nuestro proyecto de VB:
Podemos ejecutar nuestro formulario y comprobar el correcto uso...
Esto, por tanto, no será válido para datos cargados con la propiedad .RowSource.
Tenemos un formulario con un ListBox llamado 'LstPais'
Para cargar los datos desde nuestra Tabla de países en la hoja de cálculo, asociaremos al evento _Initialize con el método .AddItem.
Mientras que asociado al evento Doble Clic (_DblClick) conseguiremos que el elemento sobre el que realicemos dicha acción se elimine...
Así pues añadimos los siguiente códigos dentro de la ventana de código de nuestro UserForm en nuestro proyecto de VB:
Private Sub UserForm_Initialize() 'recorremos cada celda del campo pais de nuestra Tabla For Each pais In Range("TblPaises[paises]") 'lo incorporamos como elemento nuevo del ListBox 'empleando el método .AddItem Me.LstPais.AddItem pais.Value Next pais End Sub Private Sub LstPais_DblClick(ByVal Cancel As MSForms.ReturnBoolean) 'condicionamos al evento Doble Clic el borrado del elemento 'si hay algo seleccionado lo borramos If Me.LstPais.ListIndex >= 0 Then 'con el método .RemoveItem eliminamos el elemento Me.LstPais.RemoveItem (Me.LstPais.ListIndex) End If End Sub
Podemos ejecutar nuestro formulario y comprobar el correcto uso...
Buena Noche, estoy buscando una solución para poder eliminar datos de una tabla apartir de los datos seleccionados en un listbox, obviamente el listbox es multiselect y cargado con los datos contenidos en la tabla de igual manera busco eliminar "varios datos" elegidos en el listbox... alguien me ayuda??
ResponderEliminarHola Luís,
Eliminartendrás que recorrer el lisbox, e identificar los seleccionados... para según éstos eliminarlos de la tabla.
No hay forma de borrado múltiple simultáneo
Saludos