Editar una base de datos desde un listbox en excel

Tengo un formulario con un listbox donde se carga la base de datos de una tabla llamada TblProductos, en ella se visualizan 5 campos (Codigo, Descripcion, Medida, Precio U y Fecha Alta), al seleccionar un registro del listbox y hacerle doble click me abre un formulario de autorizacion para editar el registro donde se escribe quien autoriza (usuario) y la clave de acceso (password), una vez aceptada la informacion, se abre un nuevo formulario donde se editara el "precio U" (unicamente me interesa editar este campo); lo que quiero hacer es que al momento de modificar el "precio u" y darle aceptar, me modifique el registro en la base de datos o tabla "TblProductos".. Agradecieria infinitamente la ayuda para realizar esto...

1 respuesta

Respuesta
2

Este es el resultado de la macro, los datos son cargados en el listbox1, luego cuando selecciones la fila en el mismo la macro buscara la fila en la tabla y la seleccionara cargando el precio en el userform2, entonces tu lo único que tienes que hacer es cambiar el valor y darle click en el botón el cual te guardara la información en la fila que corresponda de la tabla tblproductos y te actualizara el listbox1 en automático.

y este es el codigo 

'es macro va en el userform1
Private Sub ListBox1_Click()
indice = ListBox1.ListIndex + 1
Range("tblproductos").Rows(indice).Select
On Error Resume Next
UserForm2.Show
On Error GoTo 0
End Sub
'
Private Sub UserForm_Initialize()
With ListBox1
    .RowSource = Range("tblproductos").Address
    .ColumnCount = Range("tblproductos").CurrentRegion.Columns.Count
    .ColumnHeads = True
End With
End Sub
'esta macro va en el userform2
Private Sub CommandButton1_Click()
Set fila = Selection
fila.Cells(1, 4) = TextBox1.Text
End Sub
Private Sub UserForm_Initialize()
Set fila = Selection
TextBox1.Text = fila.Cells(1, 4)
End Sub

¡Gracias! El código esta excelente y me sirvió al 100... je je sencillo pero cuando uno no sabe, todo se le complica... gracias de nuevo... uno tiene la oportunidad de aprender con ustedes... Saludos!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas