El código macro no obedece su función

De nuevo por tu aporte… en un principio esta macro que te anexo funcionó bien pero ahora que hago pruebas para terminar no me pone correctamente los datos capturados: el número de factura y su importe: al clikear el botón inserta la fecha actual, lo cual es correcto, pero en la celda siguiente donde va el número de factura coloca una fecha del año de 1900, y en la celda siguiente coloca el importe, lo cual es correcto también. Agradezco tus atenciones, tu tiempo y muchas gracias.

Private Sub CommandButton1_Click()   ' aplicar importe y forma de pago

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

' Identifica datos generales de la obra seleccionada

     Set h1 = Sheets(ComboBox1.Value)

     h1.Unprotect

     TextBox1 = h1.Range("d3") 'Obra

'  xxxxxxxxxx

'Por.Dante Amor

'Esta aplica la cantidad a la partida seleccionada

    Set b = h1.Columns("B").Find(ComboBox3, lookat:=xlWhole)

    If Not b Is Nothing Then

       If uc < 7 Then uc = 7

' H1. Cells(b. Row, "I") = Val(TextBox6)'si queda esta línea repite la misma cantidad

       uc = h1.Cells(b.Row, Columns.Count).End(xlToLeft).Column + 1 '= Val(TextBox6)

       h1.Cells(b.Row, uc) = Val(TextBox6)  ' Aplica el Importe

    End If

'xxxxxxxxxxxxxx......

' Identifica el proveedor y aplica en la hoja seleccionada el # de fact e importe

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 + 0) = Date

       h1.Cells(b.Row, uc + 1) = Val(TextBox8) ' # de Fact

       h1.Cells(b.Row, uc + 2) = Val(TextBox6) ' Importe

    With TextBox11

            .Value = Format(.Value, "$ #,##0;[Rojo]-$ #,#0")

    End With

    End If

    MsgBox "Importe insertado"

        h1.Protect

'xxxxxxxxxx

Sheets("Hoja1").Select

End Sub

1 Respuesta

Respuesta
1

Revisa que en las celdas de la derecha de los proveedores no tengas espacios u otros caracteres.

Borra todo lo que tengas del lado derecho de los proveedores. Prueba nuevamente.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas