No se pueden cambiar las propiedades de ListBox de un formulario VBA en Excel
No es posible cambiar las propiedades de ListBox (TextColor, BorderColor, BackColor…) desde dentro del procedimiento de evento ListBox. Ejemplo:
Private Sub MyListBox_Click()
MyListBox.BackColor = vbGreen
End Sub
Esto no tiene ningún efecto. Desde dentro de otros Subs funciona normalmente.
Respuestas
Vityata
DblClick()
es el evento que buscas:
Private Sub MyListBox_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
MyListBox.BackColor = vbRed
End Sub
Pero hay muchas formas mejores de hacerlo:
- https://codereview.stackexchange.com/questions/154401/handling-dialog-closure-in-a-vba-user-form
- https://www.vitoshacademy.com/vba-the-perfect-userform-in-vba/ (descargo de responsabilidad - mi artículo)