Excel VBA para copiar filas a otra hoja de cálculo basado en criterios

  • Compartir Este
Hugh West

Datos de afrontamiento Una de las tareas más frecuentes en Excel es copiar filas de una hoja a otra en función de unos criterios. Si tiene muchas filas y quiere copiarlas en otra hoja en función de unos criterios, puede ser una tarea tediosa y laboriosa, pero con Microsoft Aplicación Visual Basic (VBA) puede crear macros con las que podrá copiar fácilmente datos de una hoja a otra en función de diferentes criterios. En este artículo, le mostraré cómo copiar filas a otra hoja de cálculo basándose en 2 tipos diferentes de criterios mediante Excel VBA .

Supongamos que tiene el siguiente conjunto de datos en una hoja de cálculo denominada " Datos "Ahora, desea copiar filas específicas basadas en algunos criterios en otra hoja.

Descargar el cuaderno de prácticas

Copiar Filas a Otra Hoja de Trabajo Basado en Criterios.xlsm

2 Maneras de Copiar Filas a Otra Hoja de Trabajo Basado en Criterios por Excel VBA

1. Copiar filas a otra hoja de cálculo según criterios de texto

En esta demostración, le mostraré cómo copiar filas de una hoja de cálculo a otra basándose en criterios de texto. Supongamos que desea copiar los datos de los vendedores que venden en Virginia en una hoja de cálculo denominada Área de ventas utilizando Excel VBA Para hacer eso, primero,

➤ Prensa ALT+F11 para abrir el VBA ventana.

En el VBA ventana,

➤ Haga clic en el botón Inserte y seleccione Módulo .

Se abrirá el Módulo(Código) ventana. Ahora,

➤ Inserta el siguiente código en el archivo Módulo(Código) ventana,

 Sub Copy_Criteria_Text() Application.ScreenUpdating = False With ActiveSheet .AutoFilterMode = False With Range("C1", Range("C" & Rows.Count).End(xlUp)) .AutoFilter 1, "Virginia" On Error Resume Next .Offset(1).EntireRow.Copy Sheet3.Range("A" & Rows.Count).End(xlUp).Offset(1) End With .AutoFilterMode = False End With Application.ScreenUpdating = TrueSheet3.Select End Sub 

El código creará una macro llamada Copiar_Texto_Criterios que buscará Virginia en la columna C de la hoja de cálculo actual y devuelve las filas que contienen Virginia en la hoja de cálculo denominada Área de ventas (Hoja3).

Después de eso,

➤ Cerrar o minimizar el VBA ventana.

➤ Prensa ALT+F8

Se abrirá el Macro ventana.

➤ Seleccionar Copiar_Texto_Criterios en el Nombre de la macro y haga clic en Ejecutar .

Como resultado, las filas con Virginia se copiarán en la hoja de cálculo denominada Área de ventas

Leer más: Cómo copiar filas automáticamente en Excel a otra hoja (4 métodos)

2. Copiar filas a otra hoja de cálculo según criterios numéricos

Ahora, le mostraré cómo puede copiar filas de una hoja de cálculo a otra hoja de cálculo basándose en criterios numéricos. Supongamos que desea copiar los datos de las ventas superiores a 100.000 $ a una hoja de cálculo denominada Top Ventas Para hacer eso, primero,

➤ Prensa ALT+F11 para abrir el VBA ventana.

En el VBA ventana,

➤ Haga clic en el botón Inserte y seleccione Módulo .

Se abrirá el Módulo(Código) ventana. Ahora,

➤ Inserta el siguiente código en el archivo Módulo(Código) ventana,

 Sub Copy_Criteria_Number() Application.ScreenUpdating = False With ActiveSheet .AutoFilterMode = False With Range("D1", Range("D" & Rows.Count).End(xlUp)) .AutoFilter 1, ">100000" On Error Resume Next .Offset(1).EntireRow.Copy Sheet4.Range("A" & Rows.Count).End(xlUp).Offset(1) End With .AutoFilterMode = False End With Application.ScreenUpdating =True Sheet4.Select End Sub 

El código creará una macro llamada Número_Criterios_de_Copia que buscará valores superiores a 100000 en la columna D de la hoja de cálculo denominada Datos y devolver las filas que contengan valores de ventas superiores a 100.000 dólares en la hoja de cálculo denominada Top Ventas (Hoja4).

Después de eso,

➤ Cerrar o minimizar el VBA ventana.

➤ Prensa ALT+F8

Se abrirá el Macro ventana.

➤ Seleccionar Número_Criterios_de_Copia en el Nombre de la macro y haga clic en Ejecutar .

Como resultado, las filas que contengan valores de ventas superiores a 100.000 dólares se copiarán en el archivo Top Ventas hoja de trabajo.

Read More: Cómo Copiar Varias Filas en Excel Usando Macro (4 Ejemplos)

Conclusión

Con los dos métodos de este artículo, usted será capaz de copiar filas de una hoja de cálculo a otra hoja de cálculo basado en diferentes criterios mediante el uso de Excel VBA. Puede utilizar el primer método para los criterios de texto y el segundo método para los criterios numéricos. Si usted tiene cualquier tipo de confusión acerca de cualquiera de los métodos por favor no dude en dejar un comentario.

Hugh West es un capacitador y analista de Excel altamente experimentado con más de 10 años de experiencia en la industria. Tiene una Licenciatura en Contabilidad y Finanzas y una Maestría en Administración de Empresas. Hugh tiene una pasión por la enseñanza y ha desarrollado un enfoque de enseñanza único que es fácil de seguir y comprender. Su conocimiento experto de Excel ha ayudado a miles de estudiantes y profesionales en todo el mundo a mejorar sus habilidades y sobresalir en sus carreras. A través de su blog, Hugh comparte su conocimiento con el mundo, ofreciendo tutoriales gratuitos de Excel y capacitación en línea para ayudar a las personas y empresas a alcanzar su máximo potencial.