Modificar valores de la primera fila que encuentre

Dante Amor

¿Hola Dan como estas? Me gustaría si me ayudas con algo por favor

Resulta que tengo este código que usted me ayudo hace un tiempo .. Esto hace que al pinchar en un optionbutton traiga el primer dato de la hoja base de datos el cual selecciono en un conmbobox y muestra esos datos en varios textbox. Esto lo hace bien!

Pero me gustaría cambiar o modificar algún valor que trae de esa fila a los textbox. Y al pinchar en un botón me modifique ese valor y lo guarde en la fila que corresponde en este caso seria la primera fila que encuentre de arriba hacia abajo..

Por favor Dan. Gracias saludos

Set h = Sheets("Base de datos")
    If OptionButton1.Value = True Then
        registro = xlNext
        Set b = h.Columns("A").Find(ComboBox_patente1, LookIn:=xlValues, lookat:=xlWhole, SearchDirection:=registro)
          End If
    If Not b Is Nothing Then
       Lb_patente = h.Cells(b.Row, "B")
        Lb_año = h.Cells(b.Row, "C")
        Lb_marca = h.Cells(b.Row, "D")
        Lb_modelo = h.Cells(b.Row, "E")
        Lb_motor = h.Cells(b.Row, "F")
        ComboBox_Neumaticos.Value = h.Cells(b.Row, "G")
        ComboBox_Neumaticos2.Value = h.Cells(b.Row, "H")
        ComboBox_filtro_aceite.Value = h.Cells(b.Row, "J")
        ComboBox_filtro_aceite2.Value = h.Cells(b.Row, "K")
        ComboBox_filtro_aceite3.Value = h.Cells(b.Row, "L")
        ComboBox_filtro_comb.Value = h.Cells(b.Row, "M")
        ComboBox_filtro_comb2.Value = h.Cells(b.Row, "N")
        ComboBox_filtro_comb3.Value = h.Cells(b.Row, "O")
        ComboBox_filtro_aire.Value = h.Cells(b.Row, "P")
        ComboBox_filtro_aire2.Value = h.Cells(b.Row, "Q")
        ComboBox_filtro_aire3.Value = h.Cells(b.Row, "R")
        ComboBox_correas.Value = h.Cells(b.Row, "T")
        DTPicker1 = Format(h.Cells(b.Row, "V"), "short date")
        DTPicker2 = Format(h.Cells(b.Row, "X"), "short date")
        txtkilometraje = h.Cells(b.Row, "W")
    End If

1 respuesta

Respuesta
2

Prueba así:

    Set h = Sheets("Base de datos")
    If OptionButton1.Value = True Then
        registro = xlNext
        Set b = h.Columns("A").Find(ComboBox_patente1, LookIn:=xlValues, lookat:=xlWhole, SearchDirection:=registro)
    End If
    If Not b Is Nothing Then
        h.Cells(b.Row, "B") = Lb_patente
        h.Cells(b.Row, "C") = Lb_año
        h.Cells(b.Row, "D") = Lb_marca
        h.Cells(b.Row, "E") = Lb_modelo
        h.Cells(b.Row, "F") = Lb_motor
        h.Cells(b.Row, "G") = ComboBox_Neumaticos.Value
        h.Cells(b.Row, "H") = ComboBox_Neumaticos2.Value
        h.Cells(b.Row, "J") = ComboBox_filtro_aceite.Value
        h.Cells(b.Row, "K") = ComboBox_filtro_aceite2.Value
        h.Cells(b.Row, "L") = ComboBox_filtro_aceite3.Value
        h.Cells(b.Row, "M") = ComboBox_filtro_comb.Value
        h.Cells(b.Row, "N") = ComboBox_filtro_comb2.Value
        h.Cells(b.Row, "O") = ComboBox_filtro_comb3.Value
        h.Cells(b.Row, "P") = ComboBox_filtro_aire.Value
        h.Cells(b.Row, "Q") = ComboBox_filtro_aire2.Value
        h.Cells(b.Row, "R") = ComboBox_filtro_aire3.Value
        h.Cells(b.Row, "T") = ComboBox_correas.Value
        Format(h.Cells(b.Row, "V"), "short date") = DTPicker1
        Format(h.Cells(b.Row, "X"), "short date") = DTPicker2
        h.Cells(b.Row, "W") = txtkilometraje
    End If

[Sal u dos

Gracias Dante .. pero sabes que copie el código a un botón busca la Columna y fila que quiero pero al cambiar el dato no lo guarda lo deja en blanco..

En esta línea

h.Cells(b.Row, "R") = ComboBox_filtro_aire3.Value     busca la celda y la deja en blanco

Pero si cambia la linea y pongo esto

h.Cells(b.Row, "R") = "hola"     Busca la celda y pone el valor hola...

no se que diferencia hay ... por favor Dan

Set h = Sheets("Base de datos")
    If OptionButton2.Value = True Then
        registro = xlNext
        Set b = h.Columns("A").Find(ComboBox_patente1, LookIn:=xlValues, lookat:=xlWhole, SearchDirection:=registro)
    End If
    If Not b Is Nothing Then
        h.Cells(b.Row, "R") = ComboBox_filtro_aire3.Value
    End If

Disculpa Dan fue error mío el control al que hace referencia no era el correcto por eso no funcionaba!!

Muchas gracias Dante Amor por su ayuda..

saludos

De acuerdo, [no  olvides valorar.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas