Actualizar Base de Datos desde un textbox

Recurro a ud/s porque me di por vencido.. Buscando soluciones y no la encontré;

Tengo un UserForm y en esta tengo un listBox, que cuando hago click en el listado del listbox, me carga un Textbox5, y esto me lo arroja en la hoja activa, al darle con un "Botón Aceptar", hasta ahi todo bien; lo que pretendo es que cuando cambo o corrijo en el textbox5 manualmente su contenido...cambio por ser diferente de lo que extrae de la base de datos, también me lo reemplace en la Hoja27 (RUCs empresas)... Donde esta la BD.. Cuyos datos se encuentran el la columna F a partir de la fila 2 de la hoja27

Este es el Link donde tengo el archivo

https://drive.google.com/drive/folders/0B5-NlIfimBMURGRzeDh6bEJGaVU

1 Respuesta

Respuesta
1

H o l a : No puedo descargar el archivo. Envíame un correo con tu archivo, me explicas con un ejemplo lo que necesitas.

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario “Ramón Vargas” y el título de esta pregunta.

H o l a : Te anexo las macro actualizadas

Private Sub CommandButton3_Click() 'Boton aceptar, enviar datos a las diferentes celdas
    'VALIDACINOES
        If TextBox3.Text = "" Then
            MsgBox ("Debe Ingresar el N° de Factura o Salir")
            Exit Sub
        End If
        If ComboBox1.Text = "" Then
            MsgBox ("Debe Seleccionar Tipo de Documento o Salir")
            Exit Sub
        End If
        If TextBox4.Text = "" Then
            MsgBox ("Debe ingresar Monto")
            Exit Sub
        End If
    '
    'ACTUALIZAR HOJA
        ActiveCell.Offset(0, 2).Select
        ActiveCell = TextBox3
        fila = Range("A" & Rows.Count).End(xlUp).Row + 1
        ActiveCell.Offset(0, 1).Select
        ActiveCell = TextBox5
        'ActiveWorkbook = Sheets("Hoja27").Cells(7, 2)
        '---------------------------------------------------
        ActiveCell.Offset(0, 1).Select
        ActiveCell = ComboBox1
        ActiveCell.Offset(0, 1).Select
        ActiveCell = CDbl(TextBox4) 'Convierte a número doble
        'ActiveCell = TextBox4
        ActiveCell.Offset(0, 1).Select
        ActiveCell = ComboBox2
        ActiveCell.Offset(0, 2).Select
        ActiveCell = ComboBox3
    'ACTUALIZAR RUCS EMPRESAS
        'Act.Por.Dante Amor
        If TextBox5 <> ListBox1.List(ListBox1.ListIndex, 2) Then
            'El timbrado cambió.
            If ListBox1.List(ListBox1.ListIndex, 3) = "" Then
                fila = ListBox1.ListIndex + 2
            Else
                fila = Val(ListBox1.List(ListBox1.ListIndex, 3))
            End If
            RUC.Cells(fila, "F") = TextBox5
        End If
        'Fin.Por.Dante Amor
End Sub

Private Sub Buscar(TextBox As Control, Columna As Integer)
uf = RUC.Range("D" & Rows.Count).End(xlUp).Row
If Trim(TextBox) = "" Then
   ListBox1.RowSource = "'" & RUC.Name & "'!D2:G" & uf  'Se aumentó a G para considerar el número de fila
   Exit Sub
End If
ListBox1.RowSource = ""
For i = 2 To uf
   If UCase(CStr(RUC.Cells(i, Columna))) Like "*" & UCase(TextBox) & "*" Then
       ListBox1.AddItem RUC.Cells(i, 4)
       ListBox1.List(ListBox1.ListCount - 1, 1) = RUC.Cells(i, 5)
       ListBox1.List(ListBox1.ListCount - 1, 2) = RUC.Cells(i, 6)
       ListBox1.List(ListBox1.ListCount - 1, 3) = i 'se agrega la fila
   End If
Next i
End Sub

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas