Excel: cómo copiar todas las columnas de una fila según una condición

Excel: cómo copiar todas las columnas de una fila según una condición

Soy nuevo en macros y espero que alguien pueda ayudarme. Intentando hacer un informe a partir de una hoja de datos que cumpla con algunas condiciones. Necesito recuperar todos los datos (celdas) en una fila, por ejemplo, que cumplan con la condición <1 en la columna 10 y copiar esas celdas/fila en una hoja nueva. No puedo encontrar ninguna función en Excel, así que espero que una macro no demasiado avanzada que pueda modificar pueda funcionar. Gracias de antemano.

Respuesta1

  • Abra una copia de su hoja de Excel que contenga todos los datos.
  • presione ALT+ F11para abrir el editor VBA
  • abra la hoja 1 desde el panel izquierdo e inserte el código a continuación

    Sub mymacro()
      For myrow = 1 To Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
        If Cells(myrow, 8) < 1 Then
          i = i + 1
          ActiveWorkbook.Sheets(1).Rows(myrow).Copy Destination:=ActiveWorkbook.Sheets(2).Rows(i)
        End If
      Next myrow
    End Sub
    
  • regresa a tu hoja y presiona ALT+ F8y ejecuta tu macro

Este código se ejecutará hasta la última fila utilizada, verifique si el valor de la octava columna es <1 y, en caso afirmativo, copie la fila completa a la siguiente fila libre en la hoja 2.

información relacionada