Formulario de modificación o actualización de datos en Excel

Para Dante Amor.

Vamos viento en popa y cerrando muchos temas. Si eres tan amable, continuemos con el formulario "Modificar". Se trata de "pinchar" uno de los registros que se muestran en el listbox, clickar en el botón "modificar" del formulario "BÚSQUEDA" y se abre el formulario "MODIFICAR".

Busco algo así:

Es decir, una vez que elijo el registro del listbox, se abre este formulario mostrando en los textbox la información de los campos que yo haya definido. En dos de los textbox esta información no será editable (corresponderá a campos clave), pero el resto deberían poder modificarse. Para mi caso es muy importante que yo pueda elegir que el formulario muestre aquellas "columnas/campos" que desde un principio elija, que serán salteadas seguramente (es decir, necesitaría que en el código pueda especificar bien por nombre de columna o por número, aquellas que puedo modificar/rellenar). En el ejemplo he puesto tres, pero seguramente lo modificaré con alguna más. Puedo rellenar (si están vacíos) o modificar (si tienen datos) uno o varios de los que aparecen y una vez terminado, daré en el botón "modificar" de este formulario, me preguntará "¿En verdad quiere modificar estos datos?", permitiéndome cancelar la acción si así lo deseara y si le doy sí, los datos se modificarán en la tabla y volveré al formulario "modificar" viendo los datos ya corregidos/rellenos.

En espera de tus siempre bien recibidas y acertadas respuestas, recibe un agradecido saludo

1 respuesta

Respuesta
1

H  o la:

No entiendo esta parte:

"es decir, necesitaría que en el código pueda especificar bien por nombre de columna o por número, aquellas que puedo modificar/rellenar"

Quieres que el formulario de modificar se adapte automáticamente a lo que quieras modificar, es decir, si quieres modificar 3 campos, en pantalla te aparezcan 3 textbox, y si luego quieres modificar 10 campos, en pantalla te aparezcan 10 campos.

Realmente no es tan simple, ajustar un formulario en automático.

Te propongo, que crees el formulario con todos los campos potencialmente modificables. Y tal vez, con una opción en el código, se puedan habilitar o deshabilitar ciertos campos, pero crear sobre la marcha textbox y label, es mucho trabajo.

Si estás de acuerdo con la propuesta, envíame tu archivo con el formulario. Recuerda poner tu nombre de usuario en el asunto.

Te anexo la macro

Public fila, h1
'
Private Sub Botonmodificar2_Click()
'Por.Dante Amor
    res = MsgBox("¿Está seguro que quiere realizar modificaciones?", vbQuestion + vbYesNo, "MODIFICAR")
    If res = vbNo Then Exit Sub
    '
    h1.Cells(fila, "R") = Textreferencia
    h1.Cells(fila, "L") = Textexpediente
    h1.Cells(fila, "AA") = Textinicio
    MsgBox "Datos actualizados"
    Unload Me
End Sub
'
Private Sub UserForm_Activate()
'Por.Dante Amor
    Texttramitador = h1.Cells(fila, "K")
    Textclase = h1.Cells(fila, "O")
    Textreferencia = h1.Cells(fila, "R")
    Textexpediente = h1.Cells(fila, "L")
    Textinicio = h1.Cells(fila, "AA")
End Sub
'
Private Sub Botoncancelar_Click()
    Unload Me
End Sub
'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas