Deseando copiar de una hoja a otra, basado en valores en una columna.
Tengo una hoja de estimación y una factura. Estoy intentando escribir código para buscar la columna de unidades (“L”) en la hoja de estimación. Cuando se encuentra un número, copiar la descripción de una columna diferente (“A”) a la hoja de factura en un rango determinado. Soy capaz de hacer que la búsqueda se repita a través de la columna L y puede determinar si el número es >0. Incluso copiará la primera descripción a la factura. Pero no copiará nada más allá de eso. Estoy buscando ayuda por favor. Aquí está mi código hasta ahora.
Sub CopiarAFactura()
Dim rng As Range
Dim i As Long
Dim a As Long
Dim rng_dest As Range
Application.ScreenUpdating = False
i = 1
Set rng_dest = Sheets(“Estimación”).Range(“L5”)
‘ Encontrar la primera celda con valor en la columna L de la hoja de Estimación
Range(“L5”).Seleccionar
Hasta Que WorksheetFunction.CountA(rng_dest.Rows(i)) = 100
i = i + 1
Set rng = Sheets(“Factura”).Range(“C22:C36”)
‘ Copiar filas que contengan valores a la hoja de Factura
Para a = 1 Al contar las filas de rng
Si ActiveCell.Value > 0 Luego
Sheets(“Estimación”).Range(“A5”).Copy Sheets(“Factura”).Range(“C22”)
End If
‘ Moverse 1 fila hacia abajo desde la ubicación actual
ActiveCell.Offset(1, 0).Select
i = i + 1
Siguiente a
Application.ScreenUpdating = True
Loop
End Sub
davy.ai
Parece que tienes un buen comienzo en tu código. Para ayudarte, necesitarás agregar un bucle a tu código que copie la descripción de la hoja de Estimación a la hoja de Factura para cada fila que contenga un valor en la columna de unidades. Puedes usar un bucle
For
para iterar a través de las filas en la hoja de Factura y usar unIf
para verificar si el valor en la columna de unidades es mayor que 0. Si lo es, puedes usar el métodoRange.Copy
para copiar la descripción de la hoja de Estimación a la hoja de Factura. Aquí hay un ejemplo de cómo podría verse tu código: