Pegar del UserForm dos veces un número en la misma hoja seleccionada... Para Dante Amor

Me proporcionaste una macro tal como te la pedí, quedó perfecta, pero también te comenté que yo quería hacer la siguiente parte sobre esta misma, pero me falló, ahora apelo a tu buena voluntad de apoyarme con esta partecita…

Una vez hecha la selección de la “obra”, “concepto de gasto” y “Proveedor”, con otro botón “Insertar”, busca; a).- En el Rango “BC” el número del “concepto” y en la última celda vacía coloca el contenido del TxBx6 (Importe). B).-Al mismo tiempo, en el Rango “A” busca, el nombre del proveedor y en su última celda vacía coloca la fecha actual y en la de enseguida el mismo importe del TxBx6. Te agradezco tus atenciones y muchas gracias… te envío el archivo a tu correo.

 Private Sub CommandButton4_Click()  

Application.ScreenUpdating = False

   For Each h In Sheets

       n = h.Name

       If UCase(h.Name) = UCase(ComboBox1) Then

           existe = True

           Exit For

       End If

   Next

   If existe = False Then

       MsgBox "La hoja seleccionada no existe", vbCritical, "SELCCIONAR OBRA"

       Exit Sub

       ComboBox1.SetFocus

   End If …

‘--------------------

Set H1 = Sheets(ComboBox1.Value)

Set b = H1.Range("B:C").Find(What:=ComboBox3, LookAt:=xlWhole, LookIn:=xlValues)

TextBox5 = H1. Range("C" & b.Row) ' Esta línea busca la opción seleccionada (Num.) Que se encuentra en CbBx3 y el resultado (Nombre de la partida) lo coloca en el TxBx5 de esta Obra seleccionada….. Etc…Etc

1 respuesta

Respuesta
1

Te anexo la macro

Private Sub CommandButton1_Click() 'ESTE COMANDO ES SOLO PARA INSERTAR LA APLICACION
'Por.Dante Amor
    Application.ScreenUpdating = False
    For Each h In Sheets
         n = h.Name
        If UCase(h.Name) = UCase(ComboBox1) Then
            existe = True
            Exit For
        End If
    Next
    If existe = False Then
        MsgBox "La hoja seleccionada no existe", vbCritical, "SELECCIONAR OBRA"
        Exit Sub
        ComboBox1.SetFocus
    End If
    Set h1 = Sheets(ComboBox1.Value)
    TextBox1 = h1.Range("d3") 'Obra
    TextBox2 = h1.Range("d4") 'Localización
    TextBox3 = h1.Range("d5") 'Mpio
    Set b = h1.Columns("B").Find(ComboBox3, lookat:=xlWhole)
    If Not b Is Nothing Then
        h1.Cells(b.Row, "I") = Val(TextBox6)
    End If
    Set b = h1.Columns("A").Find(ComboBox2, lookat:=xlWhole)
    If Not b Is Nothing Then
        uc = h1.Cells(b.Row, Columns.Count).End(xlToLeft).Column + 1
        If uc < 7 Then uc = 7
        h1.Cells(b.Row, uc) = Date
        h1.Cells(b.Row, uc + 1) = TextBox5
        h1.Cells(b.Row, uc + 2) = Val(TextBox6)
    End If
    MsgBox "Importe insertado"
End Sub

Saludos.Dante Amor

No olvides valorar la respuesta.

¡Gracias!  Dam... Excelente tu respuesta, pero esto es un cuento de nunca acabar...vamos perfectamente bien... con paciencia... Gracias

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas