Macro para copiar fila y dividir montos de una celda

Necesito crear una macro que a partir de un archivo con datos pueda desagrupar las cantidades establecidas en una fila. Como ejemplo puedo indicar que en una fila tengo una serie de datos y en una de ella me indica la cantidad y en otras la unidades. Si tengo una fila que me indica cantidad 50 y unidades 1, no tengo problemas. Pero si en cantidad me aparece 50 y en unidades 2 o mas, como puedo copiar la fila completa, ¿dividir la cantidad en dos (para el caso de este ejemplo) y poner unidades 1?

Agradecido por su tiempo y respuesta.

Gonzalo

1 respuesta

Respuesta
2

H  o la:

Envíame un archivo con ejemplos. En la hoja1 pon tus datos tal cual los tienes. En la hoja2 pon el resultado de dividir la hoja1 en filas. Procura que en la hoja1, vengan los ejemplos reales, es decir, pon la cantidad en la columna real, también pon las unidades en la columna real

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario “Gonzalo Rojas” y el título de esta pregunta.

¡Gracias! te lo envío cuanto antes

Te anexo la macro

Sub Dividir_Datos()
'Por.Dante Amor
    Set h1 = Sheets("Origen")
    Set h2 = Sheets("divididos")
    '
    h2.Cells.Clear
    j = 2
    For i = 2 To h1.Range("Z" & Rows.Count).End(xlUp).Row
        unid = h1.Cells(i, "Z")
        cant = h1.Cells(i, "Y")
        If unid > 1 Then
            For k = 1 To unid
                h1.Rows(i).Copy h2.Rows(j)
                h2.Cells(j, "Y") = cant / unid
                h2.Cells(j, "Z") = 1
                j = j + 1
            Next
        Else
            h1.Rows(i).Copy h2.Rows(j)
            j = j + 1
        End If
    Next
    MsgBox "Fin"
End Sub

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

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas