Pasar datos de un listbox (1 columna, máx 5 items) a celda activa y celdas consecutivas cada 3 en la misma fila
Al pinchar una celda concreta dentro de una plantilla (Ej: M12 o M15 o M18) se abre un formulario con un listbox al cual filtro de 1 a 5 items los cuales quiero trasladar a dicha plantilla (1,2 o los 5) pero como tengo celdas combinadas (Ej: M12+N12+O12), necesito que no se pasen en M, N, O... Sino cada 3 columnas, es decir, M, P, S, V, Y.
En detalle:
1er item: Celda activa M
2º item: celda activa + 3 = P
3er item: celda activa + 6 = S
4º item: celda activa + 9 = V
5º item: celda activa + 12 = Y
He probado el siguiente código adaptado de otro que tengo para otra plantilla diferente, pero sólo me carga el primero de los item en la celda activa en la cual he pinchado para abrir el formulario
Private Sub CommandButton14_Click() strTitulo = "Registro de ejercicios con progresión" Continuar = MsgBox("¿Deseas guardar los datos seleccionados?", vbYesNo + vbExclamation, strTitulo) If Continuar = vbNo Then Exit Sub With BuscarEjerciciosEPRO If ListBox2.ListCount = 0 Then MsgBox "No hay datos a pasar", vbExclamation 'ListBox2(ListBox2.ListIndex) = False Exit Sub End If If ListBox2.ListCount > 5 Then MsgBox "Atención, se sobrepasa el número máximo de datos permitidos", vbExclamation 'ListBox2(ListBox2.ListIndex) = False Exit Sub End If For i = 0 To ListBox2.ListCount - 1 ActiveCell = ListBox2.List(0) ActiveCell.Offset(0, 3) = ListBox2.List(1) ActiveCell.Offset(0, 6) = ListBox2.List(2) Next MsgBox "Los datos han sido guardados satisfactoriamente", vbInformation, strTitulo Unload Me End With End Sub
Además, quisiera que si dichas celdas (Ej: M12, P12, S12, V12, Y12) tienen datos, se cargasen directamente al listbox al iniciar el formulario tras pinchar en cualquiera de dichas celdas. Esto ya no se como hacerlo.
Agradecería la ayuda, llevo un tiempo intentando solucionarlo y no he sido capaz.