¿Cambiar valor de Checkbox según me muevo en Listbox?
Quisiera pedir su valiosa colaboración, ya que tengo un problema con una macro que estoy intentando hacer en Excel.
El punto es que tengo un userform, el cual posee un listbox dicho listbox lo cargo cuando inicio el form con el rowsource de una hoja del mismo libro, ahora bien, abajo de ese mismo list tengo varios checkbox.
Lo que hago es que cada que me muevo, traigao automáticamente los valores (1 o 0) que tengo en unas columnas de mi hoja y cada que marco un checkbox cambio el estatus de esa celda.
El problema que tengo es que cada que hago esto, el valor me lo resetea solo... Es decir, si lo marco actualiza la celda, pero cuando pierde el foco la línea del listbox se resete otra vez a cero.
Voy a compartir el código por acá, para que se hagan una idea:
'-- Aquí cargo el source para mi listbox
Private Sub UserForm_Initialize()
ListBox1.ColumnCount = 5
ListBox1.ColumnWidths = "170;80;80;80;80"
ListBox1.ColumnHeads = False
ListBox1.RowSource = "Datos"
'-- Enlisto mis los valores que tiene la hoja de Excel, para pasarlo al checkbox
Private Sub ListBox1_Click()
With Me.ListBox1
Me.CheckBox5.Value = .List(.ListIndex, 9)
End With
'-- Cuando doy click en el checkbox hago el cambio en la celda
Private Sub CheckBox5_Click()
nFila = ListBox1.ListIndex + 1
If CheckBox5.Value = True Then
Worksheets("Pool").Range("J" & nFila).Value = 1
End If
If CheckBox5.Value = False Then
Worksheets("Pool").Range("J" & nFila).Value = 0
End If
NFila = me sirve para saber que celda de mi hoja voy a actualizar.
Igualmente no se por que no esta actualizandome los valores del check, es decir, si me muevo de un valor que tiene desmarcado el checkbox, y paso a otro que si lo tiene no hace el cambio, como que no refresca en el momento el listbox o el rawsource.
Podrían echarme la mano con esto.
Si tienen dudas, favor avisarme para ser más explicito.