Problema al modificar un registro de una base de datos
Tengo el siguiente código para modificar un registro
Private Sub CommandButton5_Click() 'botón de modificar, los datos del ejercicio seleccionado, sobre la misma fila Dim fila As Integer Dim Ffinal As Integer Dim i As String For fila = 4 To 2000 If Sheets("BaseDatosEjercicios").Cells(fila, 7) = Empty Then Ffinal = fila - 1 'restamos 1 porque queremos modificar, no añadir Exit For End If Next For fila = 4 To Ffinal If cmbBuscador.text = Sheets("BaseDatosEjercicios").Cells(fila, 7) Then Cells(fila, 1) = TextBox1.Text Cells(fila, 2) = TextBox2.Text Cells(fila, 3) = TextBox3.Text Cells(fila, 4) = TextBox4.Text Cells(fila, 5) = TextBox5.Text Cells(fila, 6) = TextBox6.Text Cells(fila, 7) = TextBox7.Text Cells(fila, 8) = TextBox8.Text Cells(fila, 9) = TextBox9.Text Cells(fila, 10) = TextBox10.Text Cells(fila, 11) = TextBox11.Text Cells(fila, 12) = TextBox12.Text Cells(fila, 13) = TextBox13.Text Dim res res = MsgBox("Ha modificado la imagen?", vbQuestion + vbYesNo, "IMAGEN") If res = vbYes Then Cells(fila, 14) = RutaImagen Else Cells(fila, 14) = txtNombreImagen End If MsgBox "El ejercicio se ha modificado con éxito", vbInformation + vbOKOnly, "MODIFICAR EJERCICIO" txtImagen.Picture = LoadPicture("") 'borramos la ultima imagen seleccionada Call ComboBoxEjercicio 'actualiza la lista total de ejercicios Call ordenarBDejercicio 'ordena la base de datos Call nuevocódigo 'genera nuevo código de registros CommandButton2.Enabled = True 'Activa el botón de guardar Exit For End If Next End Sub
El problema es que sólo modifica datos hasta el textbox7 (el nombre), lo pasa correctamente a la hoja y al buscarlo de nuevo salen los datos con la modificación. Pero desde el textbox8 en adelante si modifico o añado algun dato en dichos textbox, no se guardan. Desconozco el motivo.
Antes funcionaba bien pero hice una modificación en el ComboBoxEjercicio (lo utilizo para actualizar la lista de ejercicios del buscador) pasando del código
Private Sub ComboBoxEjercicio() 'Sirve para que aparezca una lista con todos los ejercicios en cmbBuscador trows = Worksheets("BaseDatosEjercicios").Range("A1").CurrentRegion.Rows.Count cmbBuscador.Clear 'se borra la lista de ejercicios For i = 4 To trows cmbBuscador.AddItem Worksheets("BaseDatosEjercicios").Cells(i, 7).Value 'Se carga la lista de ejercicios Next i End Sub
Al siguiente código
Private Sub ComboBoxEjercicio() 'Sirve para que aparezca una lista con todos los ejercicios en cmbBuscador cmbBuscador = "" Me.cmbBuscador.RowSource = "ListaEjercicios" End Sub
La modificación la hice con el fin de buscar el dato con la condición del tipo de ejercicio y agilizar tiempo de búsqueda pero me daba problemas en el "call ComboBoxEjercicio"
ss
En fin, tras todas las modificaciones, funciona todo perfecto excepto por ese detalle del boton modificar y tras horas dandole vueltas no se cual es la solución.