El spinbutton no me funciona cuando añado al listbox items de otro listbox y se mezclan ssssss

Pregunta para Dante Amor:

Hola Dante, hace un tiempo me ayudaste a configurar un spinbutton y ahora he decidido evolucionarlo y me ha surgido un problema.

Tengo un listbox que se carga al abrir el formulario con los datos que tengo en una plantilla de ejercicios (la propia hoja). Entonces al seleccionar sesión 1 carga de dicha plantilla: código, nombre, volumen1, volumen2, volumen3, volumen4 y tut (hasta entonces sólo cargaba código y nombre, el resto es lo que acabo recientemente de añadir)

Hasta ese punto el spinbutton arriba y abajo funciona bien bajo el código que me diste (el SpinDown es igual pero con + en vez de -):

Private Sub SpinButton2_SpinUp()
'Estructurar el spin para mover los items hacia arriba en la lista 2
   Dim SelIndex         As Long
   Dim Temp             As String
   SelIndex = ListBox2.ListIndex
   If SelIndex > 0 Then
      Temp = ListBox2.List(SelIndex - 1)
      Temp2 = ListBox2.List(SelIndex - 1, 1)
      Temp3 = ListBox2.List(SelIndex - 1, 2) 'columna3 vol1
      Temp4 = ListBox2.List(SelIndex - 1, 3) 'columna4 vol2
      Temp5 = ListBox2.List(SelIndex - 1, 4) 'columna5 vol3
      Temp6 = ListBox2.List(SelIndex - 1, 5) 'columna6 vol4
      Temp7 = ListBox2.List(SelIndex - 1, 6) 'columna7 tut
      ListBox2.List(SelIndex - 1) = ListBox2.List(SelIndex)
      ListBox2.List(SelIndex - 1, 1) = ListBox2. List(SelIndex, 1)
      ListBox2.List(SelIndex - 1, 2) = ListBox2. List(SelIndex, 2) 'columna3 vol1
      ListBox2.List(SelIndex - 1, 3) = ListBox2. List(SelIndex, 3) 'columna4 vol2
      ListBox2.List(SelIndex - 1, 4) = ListBox2. List(SelIndex, 4) 'columna5 vol3
      ListBox2.List(SelIndex - 1, 5) = ListBox2. List(SelIndex, 5) 'columna6 vol4
      ListBox2.List(SelIndex - 1, 6) = ListBox2. List(SelIndex, 6) 'columna7 tut
      ListBox2.List(SelIndex) = Temp
      ListBox2.List(SelIndex, 1) = Temp2
      ListBox2.List(SelIndex, 2) = Temp3 'columna3 vol1
      ListBox2.List(SelIndex, 3) = Temp4 'columna4 vol2
      ListBox2.List(SelIndex, 4) = Temp5 'columna5 vol3
      ListBox2.List(SelIndex, 5) = Temp6 'columna6 vol4
      ListBox2.List(SelIndex, 6) = Temp7 'columna7 tut
      ListBox2.ListIndex = ListBox2.ListIndex - 1
   End If
End Sub

El problema es cuando en el formulario, añado algún ejercicio de mi motor de búsqueda... (adjunto imagen) a la lista que he cargado de la plantilla y se mezclan.

Entonces el spinbutton no funciona, salta un error (adjunto imagen). 

s

Hasta ahora yo no cargaba los volúmenes al listbox, sólo cargaba y añadía ejercicios, el spin funcionaba, pero me parecido interesante añadirlos para luego no tener que reescribirlos de nuevo en la plantilla (ahorrar tiempo).

Entiendo que el spinbutton no disocia los ejercicios que ya están establecidos con los nuevos que entran al listbox sólo con el código y el nombre (les faltan las restantes 5 columnas).

¿Hay alguna solución?

Añade tu respuesta

Haz clic para o