VBA para Ocultar Filas en Excel (14 Métodos)

  • Compartir Este
Hugh West

A veces necesitamos ocultar algunas filas específicas cuando utilizamos nuestro gran conjunto de datos en Excel para una mejor legibilidad. Implementación de Macro VBA es el método más eficaz, rápido y seguro para ejecutar cualquier operación en Excel. En este artículo, le mostraremos cómo ocultar filas en Excel en función de diferentes criterios utilizando la macro VBA.

Descargar el cuaderno de ejercicios

Puede descargar gratuitamente el libro de ejercicios de Excel desde aquí.

Ocultar Filas con VBA.xlsm

14 Métodos con VBA para Ocultar Filas en Excel

En esta sección analizaremos 12 métodos diferentes con VBA a ocultar filas El ejemplo que utilizaremos a lo largo de todo el artículo se muestra a continuación.

1. Incrustar VBA para ocultar una sola fila en Excel

Si desea ocultar una sola fila con VBA a continuación, siga los pasos que se indican a continuación. En nuestro caso, vamos a ocultar fila número 5 ( Apellido ) de nuestro conjunto de datos.

Pasos:

  • Pulse Alt + F11 en su teclado o vaya a la pestaña Desarrollador -> Visual Basic para abrir Editor de Visual Basic .

  • En la ventana de código emergente, en la barra de menús, haga clic en Insertar -> Módulo .

  • Copie el siguiente código y péguelo en la ventana de código.
 Sub HideSingleRow() Worksheets("Single").Range("5:5").EntireRow.Hidden = True End Sub 

Su código ya está listo para ejecutarse.

Toma,

  • Hojas de cálculo("Individual") = Establecer el nombre de la hoja de trabajo.
  • Rango("5:5") = Pasa fila número 5 dentro del Gama método.

  • Pulse F5 en el teclado o, en la barra de menús, seleccione Run -> Run Sub/UserForm También puede hacer clic en el botón pequeño icono Play en la barra de submenú para ejecutar la macro.

Fíjate en la imagen de abajo, fila número 5 se oculta después de ejecutar la función VBA código.

Más información: Fórmula para Ocultar Filas en Excel (7 Métodos)

2. Insertar macro para ocultar filas contiguas en Excel

Ha aprendido a ocultar una fila con VBA Pero supongamos que quieres ocultar un rango de filas que son contiguo También puede hacerlo con VBA en Excel. Vamos a ocultar filas números 5 a 7 de nuestro conjunto de datos mostrado anteriormente.

Pasos:

  • De la misma manera que antes, abra Editor de Visual Basic del Desarrollador y Inserte a Módulo en la ventana de código.
  • En la ventana de código, copia el siguiente código y pégalo.
 Sub HideContiguousRows() Worksheets("Contiguous").Range("5:7").EntireRow.Hidden = True End Sub 

Su código ya está listo para ejecutarse.

Toma,

  • Hojas de cálculo("Contigua") = Establecer el nombre de la hoja de trabajo.
  • Rango("5:7") = Pasa fila número 5 a 7 dentro del Gama método.

  • Ejecutar este código y ver en la siguiente imagen que filas 5 a 7 están ocultos ahora.

Más información: Cómo Ocultar y Desocultar Filas en Excel (6 maneras más fáciles)

3. Incrustar macro para secretar filas no contiguas

Esta vez aprenderás a ocultar filas en Excel que son no contiguo con VBA Con nuestro conjunto de datos, el código para ocultar filas 5, 6, 8 y 9 se indican a continuación.

Pasos:

  • Como se ha demostrado anteriormente, las Editor de Visual Basic del Desarrollador y Inserte a Módulo en la ventana de código.
  • En la ventana de código, copia el siguiente código y pégalo.
 Sub HideNonContiguousRows() Worksheets("No contiguas").Range("5:6, 8:9").EntireRow.Hidden = True End Sub 

Su código ya está listo para ejecutarse.

Toma,

  • Hojas de cálculo("No contiguas") = Establecer el nombre de la hoja de trabajo.
  • Rango("5:6, 8:9") = Pasa fila número 5 a 6 y 8 a 9 dentro del Gama método.

  • Ejecutar este trozo de código y ver que filas 5 a 6 y 8 a 9 están ocultos en la siguiente imagen.

Más información: Cómo Ocultar Filas en Excel (6 Métodos Efectivos)

4. Macro para Ocultar Todas las Filas que Contienen Textos en Excel

Si desea ocultar todas las filas que contienen texto siga los pasos que se indican a continuación.

Pasos:

  • Abrir Editor de Visual Basic del Desarrollador y Inserte a Módulo en la ventana de código.
  • En la ventana de código, copia el siguiente código y pégalo.
 Sub HideAllRowsContainsText() LastRow = 1000 'Supongamos que hay 1000 filas en el conjunto de datos For i = 1 To LastRow 'Recorre cada fila y comprueba la condición requerida 'Para ocultar todas las filas con los datos de texto If IsNumeric(Range("C" & i)) = False Then Rows(i).EntireRow.Hidden = True Next End Sub 

Su código ya está listo para ejecutarse.

Toma,

  • IsNumeric(Range("C" & i)) = Los datos de nuestro conjunto de datos comienzan a partir de columna C, así que pasamos C dentro del Gama método.

  • Ejecutar este código y observará todas las filas que eran que contiene texto están ahora ocultos.

Más información: Cómo Desocultar Varias Filas en Excel (9 Métodos)

5. Macro para ocultar todas las filas que contienen números en Excel

Y si quieres esconderte todas las filas que contienen valores numéricos con VBA siga los pasos que se indican a continuación.

Pasos:

  • Abrir Editor de Visual Basic del Desarrollador y Inserte a Módulo en la ventana de código.
  • En la ventana de código, copia el siguiente código y pégalo.
 Sub HideAllRowsContainsNumbers() LastRow = 1000 'Supongamos que hay 1000 filas en el conjunto de datos For i = 4 To LastRow 'Recorre cada fila y comprueba la condición requerida 'Establecemos i = 4 porque nuestros datos empiezan en la fila 4 'Para ocultar todas las filas con datos numéricos If IsNumeric(Range("C" & i)) = True Then Rows(i).EntireRow.Hidden = True Next End Sub 

Su código ya está listo para ejecutarse.

Toma,

  • IsNumeric(Range("C" & i)) = Los datos de nuestro conjunto de datos comienzan a partir de columna C, así que pasamos C dentro del Gama método.

  • Ejecutar este código y observe que todas las filas que eran que contiene valores numéricos antes están ahora ocultos.

Más información: Ocultar Filas Duplicadas Basadas en una Columna en Excel (4 Métodos)

6. Macro para Ocultar Filas que Contienen Cero (0) en Excel

Supongamos que desea ocultar sólo las filas de una columna específica que son manteniendo 0 (cero) Observe el siguiente conjunto de datos en el que el Columna E tiene 0 en fila 7 y 82 en la fila 10 Aprenderemos a ocultar sólo la fila que contiene 0 ( fila 7 ) con VBA en Excel.

Pasos:

  • Abrir Editor de Visual Basic del Desarrollador y Inserte a Módulo en la ventana de código.
  • En la ventana de código, copia el siguiente código y pégalo.
 Sub HideRowContainsZero() LastRow = 1000 'Supongamos que hay 1000 filas en el conjunto de datos For i = 4 To LastRow 'Recorre cada fila y comprueba la condición requerida 'Establecemos i = 4 porque nuestros datos empiezan en la fila 4 'Para ocultar la fila que contiene 0 en la columna E If Range("E" & i) = 0 Then Rows(i).EntireRow.Hidden = True Next End Sub 

Su código ya está listo para ejecutarse.

  • Ejecutar este código y observe que la fila ( fila 7 ) que contenían 0 en columna E está ahora oculto, mientras que fila 10 que lleva 82 no está oculto.

Más información: Cómo ocultar filas en blanco en Excel VBA (4 métodos útiles)

7. Implementar Macro para Ocultar Filas con Valores Negativos en Excel

Del mismo modo que puede ocultar filas que contengan cero de la misma columna, puede ocultar las filas con valores negativos Con el conjunto de datos que se muestra a continuación, en el que columna E contiene tanto valores negativos como positivos, veremos el código que oculta sólo el negativo.

Pasos:

  • Abrir Editor de Visual Basic del Desarrollador y Inserte a Módulo en la ventana de código.
  • En la ventana de código, copia el siguiente código y pégalo.
 Sub HideRowContainsNegative() LastRow = 1000 'Supongamos que hay 1000 filas en el conjunto de datos For i = 4 To LastRow 'Recorre cada fila y comprueba la condición requerida 'Establecemos i = 4 porque nuestros datos empiezan en la fila 4 'Para ocultar la fila que contiene valores negativos en la columna E If IsNumeric(Range("E" & i)) = True Then If Range("E" & i) <0 ThenRows(i).EntireRow.Hidden = True End If Next End Sub 

Su código ya está listo para ejecutarse.

  • Ejecutar este código y observe que fila 7 que contenía un valor negativo (-10) en columna E está ahora oculto, mientras que fila 10 que lleva 82 no está oculto.

8. Incrustar VBA para Ocultar Filas que Contienen Valores Positivos en Excel

Esta vez con el conjunto de datos que figura a continuación, donde columna E contiene ambos valores cero positivos, veremos que el VBA código que oculta sólo el positivo .

Pasos:

  • Abrir Editor de Visual Basic del Desarrollador y Inserte a Módulo en la ventana de código.
  • En la ventana de código, copia el siguiente código y pégalo.
 Sub HideRowContainsPositive() LastRow = 1000 'Supongamos que hay 1000 filas en el conjunto de datos For i = 4 To LastRow 'Recorre cada fila y comprueba la condición requerida 'Establecemos i = 4 porque nuestros datos empiezan en la fila 4 'Para ocultar la fila que contiene valores positivos en la columna E If IsNumeric(Range("E" & i)) = True Then If Range("E" & i)> 0 ThenRows(i).EntireRow.Hidden = True End If Next End Sub 

Su código ya está listo para ejecutarse.

  • Ejecutar este código y observe que fila 7 que contenía un valor positivo (55) en columna E está ahora oculto, mientras que fila 10 que lleva 0 no está oculto.

Más información: VBA para Ocultar Filas Basado en el Valor de la Celda en Excel (14 Ejemplos)

9. Macro para Ocultar Filas que Contienen Números Impares en Excel

Puede ocultar las filas con números impares como su valor. En el ejemplo que mostramos al principio de este artículo, columna E tiene números pares e impares en filas 7 y 10 Aprenderemos el código de ocultar la fila que mantiene números impares sólo.

Pasos:

  • Abrir Editor de Visual Basic del Desarrollador y Inserte a Módulo en la ventana de código.
  • En la ventana de código, copia el siguiente código y pégalo.
 Sub HideRowContainsOdd() LastRow = 1000 'Supongamos que hay 1000 filas en el conjunto de datos For i = 4 To LastRow 'Recorre cada fila y comprueba la condición requerida 'Establecemos i = 4 porque nuestros datos empiezan en la fila 4 'Para ocultar la fila que contiene valores positivos en la columna E If IsNumeric(Range("E" & i)) = True Then If Range("E" & i) Mod 2 = 1 ThenRows(i).EntireRow.Hidden = True End If Next End Sub 

Su código ya está listo para ejecutarse.

  • Ejecutar este trozo de código y ver que sólo fila 7 que contenía un número impar (55) en columna E está ahora oculto, mientras que fila 10 que lleva un número par (82) no está oculto.

10. VBA para Ocultar Filas que Contienen Números Pares en Excel

Del mismo modo, puede ocultar las filas que tienen números pares como su valor. En el ejemplo que mostramos al principio de este artículo, columna F tiene números pares e impares en filas 7 y 10 Aprenderemos el código de ocultar la fila que mantiene números pares sólo.

Pasos:

  • Abrir Editor de Visual Basic del Desarrollador y Inserte a Módulo en la ventana de código.
  • En la ventana de código, copia el siguiente código y pégalo.
 Sub HideRowContainsEven() LastRow = 1000 'Supongamos que hay 1000 filas en el conjunto de datos For i = 4 To LastRow 'Recorre cada fila y comprueba la condición requerida 'Establecemos i = 4 porque nuestros datos empiezan en la fila 4 'Para ocultar la fila que contiene valores positivos en la columna F If IsNumeric(Range("F" & i)) = True Then If Range("F" & i) Mod 2 = 0 ThenRows(i).EntireRow.Hidden = True End If Next End Sub 

Su código ya está listo para ejecutarse.

  • Ejecutar este código y ver que sólo fila 7 que contenía un número par (100) en columna F está ahora oculto, mientras que fila 10 que lleva un número impar (75) no está oculto.

Más información: Excel VBA: Desocultar Todas las Filas en Excel (5 Ejemplos Prácticos)

11. Insertar Macro para Ocultar Filas Mayores que una Condición Específica

Puede ocultar las filas superiores a un valor específico con VBA Excel. Supongamos que desea ocultar las filas de columna E donde el valor es superior al 80 He aquí cómo hacerlo:

Pasos:

  • Abrir Editor de Visual Basic del Desarrollador y Inserte a Módulo en la ventana de código.
  • En la ventana de código, copia el siguiente código y pégalo.
 Sub HideRowContainsGreater() LastRow = 1000 'Supongamos que hay 1000 filas en el conjunto de datos For i = 4 To LastRow 'Recorre cada fila y comprueba la condición requerida 'Establecemos i = 4 porque nuestros datos empiezan en la fila 4 'Para ocultar la fila que contiene valores positivos en la columna E If IsNumeric(Range("E" & i)) = True Then If Range("E" & i)> 80 ThenRows(i).EntireRow.Hidden = True End If Next End Sub 

Su código ya está listo para ejecutarse.

  • Ejecutar este código y ver que sólo fila 10 que contenía 82 (que es superior a 80) en columna E está ahora oculto, mientras que fila 7 que lleva 55 no está oculto.

Más información: Ocultar Filas Basado en el Valor de la Celda con Formato Condicional en Excel

12. Incrustar Macro para Cubrir Filas que es Menor que una Condición Específica en Excel

También puede ocultar las filas inferiores a un valor específico con VBA Excel. Supongamos que desea ocultar las filas de columna E donde el valor es menos del 80 He aquí cómo hacerlo:

Pasos:

  • Abrir Editor de Visual Basic del Desarrollador y Inserte a Módulo en la ventana de código.
  • En la ventana de código, copia el siguiente código y pégalo.
 Sub HideRowContainsLess() LastRow = 1000 'Supongamos que hay 1000 filas en el conjunto de datos For i = 4 To LastRow 'Recorre cada fila y comprueba la condición requerida 'Establecemos i = 4 porque nuestros datos empiezan en la fila 4 'Para ocultar la fila que contiene valores positivos en la columna E If IsNumeric(Range("E" & i)) = True Then If Range("E" & i) <80 ThenRows(i).EntireRow.Hidden = True End If Next End Sub 

Su código ya está listo para ejecutarse.

  • Ejecutar este código y ver que sólo fila 7 que contenía 55 (que es inferior a 80) en columna E está ahora oculto, mientras que fila 10 es decir transporte 82 no está oculto.

13. Ocultar Filas Basándose en el Valor del Texto de la Celda con Macro

Supongamos que desea ocultar una fila que contiene un texto específico En nuestro caso, le daremos un ejemplo con la fila que contiene la palabra " Química ", fila 6 y le proporcionará el código sobre cómo ocultar esa fila.

Pasos:

  • Abrir Editor de Visual Basic del Desarrollador y Inserte a Módulo en la ventana de código.
  • En la ventana de código, copia el siguiente código y pégalo.
 Sub HideRowCellTextValue() StartRow = 4 LastRow = 10 iCol = 4 For i = StartRow To LastRow If Cells(i, iCol).Value "Chemistry" Then Cells(i, iCol).EntireRow.Hidden = False Else Cells(i, iCol).EntireRow.Hidden = True End If Next i End Sub 

Su código ya está listo para ejecutarse.

Toma,

  • InicioFila = 4 -> Primera fila del conjunto de datos.
  • ÚltimaFila = 10 -> Última fila del conjunto de datos.
  • iCol = 4 -> El dirección de columna que contiene el texto valor.

  • Ejecutar este código y observe que fila número 6 que consiste en la palabra " Química " está oculto.

14. Macro para Ocultar Filas Basado en el Valor Numérico de la Celda en Excel

Anteriormente has visto cómo ocultar una fila basándose en el valor del texto de la celda, esta vez aprenderás cómo hacerlo cuando la celda el valor es numérico En nuestro caso, le daremos un ejemplo con la fila que contiene el valor numérico ". 87 ", fila 7 y le proporcionará el código sobre cómo ocultar esa fila.

Pasos:

  • Abrir Editor de Visual Basic del Desarrollador y Inserte a Módulo en la ventana de código.
  • En la ventana de código, copia el siguiente código y pégalo.
 Sub HideRowCellNumValue() StartRow = 4 LastRow = 10 iCol = 4 For i = StartRow To LastRow If Cells(i, iCol).Value "87" Then Cells(i, iCol).EntireRow.Hidden = False Else Cells(i, iCol).EntireRow.Hidden = True End If Next i End Sub 

Su código ya está listo para ejecutarse.

Toma,

  • InicioFila = 4 -> Primera fila del conjunto de datos.
  • ÚltimaFila = 10 -> Última fila del conjunto de datos.
  • iCol = 4 -> El dirección de columna que contiene el texto valor.

  • Ejecutar este código y observe que fila número 7 que consiste en el valor numérico " 87 " está oculto.

Más información: Cómo Ocultar Filas Basándose en el Valor de la Celda en Excel (5 Métodos)

Conclusión

Este artículo muestra cómo ocultar filas en Excel con VBA Espero que este artículo le haya sido muy útil. No dude en preguntar si tiene alguna duda sobre el tema.

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.