Consejo: Otros idiomas son traducidos por Google. Puedes visitar el English versión de este enlace.
Iniciar sesión
x
or
x
x
Suscríbete
x

or

¿Cómo filtrar una lista y eliminar el resto de las filas ocultas o visibles en Excel?

Para obtener una lista filtrada, es posible que deba eliminar las filas ocultas o visibles para conservar solo los datos útiles. En este artículo, le mostraremos los métodos para eliminar el resto de las filas ocultas o visibles de una lista filtrada en Excel.

Eliminar filas ocultas en la hoja de cálculo activa con código VBA

Eliminar las filas visibles de la lista filtrada con la selección de todas las celdas visibles

Eliminar las filas ocultas o visibles de la lista filtrada con Kutools para Excel

Ficha Office Habilite la edición y navegación con pestañas en Office y haga su trabajo mucho más fácil ...
Kutools para Excel: la mejor herramienta de productividad de Office resolverá la mayoría de sus problemas de Excel
  • Texto automático: Cree sus gráficos, imágenes, celdas, fórmulas complejas y reutilizar ellos rápidamente en el futuro.
  • Más de características de texto 20: Extraer número de la cadena de texto; Extraer o eliminar parte de los textos; Convertir números y monedas a palabras en inglés ...
  • Herramientas de fusión: Múltiples libros de trabajo y hojas en uno; Fusionar múltiples celdas / filas / columnas y guardar datos; Combinar filas duplicadas y sumar ...
  • Herramientas divididas: Dividir datos en varias hojas en función del valor; Un libro de trabajo para múltiples archivos Excel, PDF o CSV; De una columna a varias columnas ...
  • Saltar pasta Filas ocultas / filtradas; Cuenta y suma por color de fondo; Crear lista de correo y Enviar correos electrónicos por el valor de la celda...
  • Súper filtro: Cree esquemas de filtro avanzados y aplique a cualquier hoja; Tipo de Propiedad por semana, día, frecuencia y más; Filtrar por negrita, fórmulas, comentario ...
  • Más de potentes funciones de 300; Funciona con Office 2007-2019 y 365; Soporta todos los idiomas; Fácil despliegue en compañía; Funciones completas de prueba gratuita de 60-day.

Eliminar filas ocultas en la hoja de cálculo activa con código VBA


Esta sección le mostrará el código VBA para eliminar las filas ocultas en la hoja activa. Por favor haz lo siguiente.

1. Active la hoja de trabajo que necesita para eliminar filas ocultas, presione otro + F11 teclas simultáneamente para abrir el Microsoft Visual Basic para aplicaciones ventana.

2. En la ventana de Microsoft Visual Basic para Aplicaciones, haga clic en recuadro > Módulo. Y luego copie y pegue el siguiente código de VBA en la ventana del Módulo.

Código VBA: Eliminar filas ocultas

Sub RemoveHiddenRows()
	Dim xRow As Range
	Dim xRg As Range
	Dim xRows As Range
	On Error Resume Next
	Set xRows = Intersect(ActiveSheet.Range("A:A").EntireRow, ActiveSheet.UsedRange)
	If xRows Is Nothing Then Exit Sub
		For Each xRow In xRows.Columns(1).Cells
			If xRow.EntireRow.Hidden Then
				If xRg Is Nothing Then
					Set xRg = xRow
				Else
					Set xRg = Union(xRg, xRow)
				End If
			End If
		Next
		If Not xRg Is Nothing Then
			MsgBox xRg.Count & " hidden rows have been deleted", , "Kutools for Excel"
			xRg.EntireRow.Delete
		Else
			MsgBox "No hidden rows found", , "Kutools for Excel"
		End If
	End Sub

3. presione el F5 clave para ejecutar el código. Si hay filas ocultas en la hoja activa, después de ejecutar el código, aparecerá un cuadro de diálogo que le indicará cuántas filas ocultas se han eliminado. Haga clic en el OK para eliminar las filas ocultas Ver captura de pantalla:

doc delete rest 1

De lo contrario, obtendrá el siguiente cuadro de diálogo después de ejecutar el código.

doc delete rest 1

Nota: el código VBA anterior no solo puede eliminar filas ocultas de la lista filtrada, sino también eliminar filas ocultas que ha ocultado previamente manualmente.


Eliminar filas visibles de la lista filtrada con la selección de todas las celdas visibles

Para eliminar filas visibles de la lista filtrada, haga lo siguiente.

1. Seleccione todas las filas filtradas y presione F5 clave para abrir el Para ir cuadro de diálogo, luego haga clic en Especial botón. Ver captura de pantalla:

doc delete rest 1

2. En el Ir a Especial cuadro de diálogo, verifique Solo celdas visibles opción, y luego haga clic en OK botón.

doc delete rest 1

3. Ahora se seleccionan todas las filas visibles, haga clic con el botón derecho en la selección y luego haga clic Eliminar filas.

doc delete rest 1

Hasta ahora, todas las filas visibles se eliminan de la lista filtrada.


Eliminar las filas ocultas o visibles de la lista filtrada con Kutools para Excel

Los dos métodos anteriores pueden no ser las soluciones deseadas para muchos usuarios de Excel, aquí presentamos una herramienta práctica. Con la Eliminar filas y columnas ocultas (visibles) utilidad de Kutools for Excel, puede eliminar fácilmente las filas ocultas en el rango / hojas seleccionados, la hoja activa o todas las hojas de trabajo en Excel.

Kutools for Excel : con más de 300 útiles complementos de Excel, gratis para probar sin limitaciones en los días 60.

1. Si solo desea eliminar filas ocultas o visibles de una lista filtrada, seleccione manualmente el rango filtrado y luego haga clic en Kutools > Borrar > Eliminar filas y columnas ocultas (visibles). Ver captura de pantalla:

2. En el Eliminar filas y columnas ocultas (visibles) cuadro de diálogo, seleccione En el rango seleccionado en el objeto Pase a ver lista desplegable (puede seleccionar otras opciones cuando lo necesite), verifique filas opción en el Eliminar tipo sección, y en el Tipo detallado sección, verificar Filas visibles or Filas ocultas opción que necesita. Y finalmente haga clic en OK botón. Ver captura de pantalla:

doc delete rest 1

3. Luego, aparece un cuadro de diálogo para indicarle cuántas filas se han eliminado, haga clic en OK botón.

doc delete rest 1


Eliminar las filas ocultas o visibles de la lista filtrada con Kutools para Excel

Kutools for Excel incluye más de las útiles herramientas de Excel de 300. Gratis para probar sin limitaciones en los días 60. ¡Descargue la versión de prueba gratuita ahora!


Kutools for Excel: la mejor herramienta de productividad de Office aumenta su productividad en un 80%

  • Super Formula Bar (edite fácilmente varias líneas de texto y fórmula); Diseño de lectura (lee y edita fácilmente un gran número de celdas); Pegar en rango filtrado...
  • Combinar celdas / filas / columnas y mantener datos; Contenido de celdas divididas; Combinar filas duplicadas y suma / promedio... Prevenir células duplicadas; Comparar rangos...
  • Seleccione Duplicado o Único Filas; Seleccionar filas en blanco (todas las celdas están vacías); Super Find y Fuzzy Find en muchos libros de trabajo; Selección aleatoria ...
  • Copia exacta Celdas múltiples sin cambiar la referencia de fórmula; Crear referencias automáticamente a múltiples hojas; Insertar viñetas, Casillas de verificación y más ...
  • Fórmulas favoritas e insertadas rápidamente, Gamas, cuadros y cuadros; Cifrar celdas con contraseña Crear una lista de correo y enviar correos electrónicos ...
  • Extracto del texto, Agregar texto, Eliminar por posición, Eliminar espacio; Crear e imprimir subtotales de paginación; Convertir entre contenido de celdas y comentarios...
  • Súper filtro (guardar y aplicar esquemas de filtro a otras hojas); Clasificación avanzada por mes / semana / día, frecuencia y más; Filtro especial por negrita, cursiva ...
  • Combinar libros de trabajo y hojas de trabajo; Combinar tablas basadas en columnas clave; Dividir datos en varias hojas; Conversión por lotes xls, xlsx y PDF...
  • Más de potentes funciones de 300. Funciona con Office 2007-2019 y 365. Soporta todos los idiomas. Fácil despliegue en compañía. Funciones completas de prueba gratuita de 60-day.
pestaña kte 201905

Office Tab lleva la interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil

  • Habilitar la edición y lectura con pestañas en Word, Excel, PowerPoint, Editor, Acceso, Visio y Proyecto.
  • Abra y cree varios documentos en nuevas pestañas de la misma ventana, en lugar de en nuevas ventanas.
  • ¡Aumenta tu productividad en un 50% y reduce cientos de clics de ratón por ti todos los días!
fondo officetab
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Bill · 1 months ago
    VBA code to Delete hidden rows worked perfectly with no fiddling. THANK YOU!!
  • To post as a guest, your comment is unpublished.
    Maximillian Eckemoff · 1 years ago
    Feedback re: the macro for hidden row deletions - this takes too long to run on 900k rows to be useful. 2+ hours on an OC'd Threadripper 1950X and still running (had to end task). Any way to optimize it to use multiple cores or is this a VBA limitation?
    • To post as a guest, your comment is unpublished.
      crystal · 1 years ago
      Hi,
      The code has been optimized. Please have a try. Thank you for your comment.

      Sub RemoveHiddenRows()
      Dim xFlag As Boolean
      Dim xStr, xTemp As String
      Dim xDiv, xMod As Long
      Dim I, xCount, xRows As Long
      Dim xRg, xCell, xDRg As Range
      Dim xArr() As String
      On Error Resume Next
      Application.ScreenUpdating = False
      Application.EnableEvents = False
      Set xRg = Intersect(ActiveSheet.Range("A:A").EntireRow, ActiveSheet.UsedRange)
      If xRg Is Nothing Then Exit Sub
      xRows = xRg.Rows.Count
      Set xRg = xRg(1)
      xFlag = True
      xTemp = ""
      xCount = 0
      For I = 1 To xRows
      Set xCell = xRg.Offset(I - 1, 0)
      Do While xFlag
      If xCell.EntireRow.Hidden Then
      xStr = xCell.Address
      xFlag = False
      Else
      GoTo Ctn
      End If
      Loop
      If xCell.EntireRow.Hidden Then
      xTemp = xStr & "," & xCell.Address
      End If
      If Len(xTemp) > 171 Then
      xCount = xCount + 1
      ReDim Preserve xArr(1 To xCount)
      xArr(xCount) = xStr
      xStr = xCell.Address
      Else
      xStr = xTemp
      End If
      Ctn:
      Next
      xCount = xCount + 1
      ReDim Preserve xArr(1 To xCount)
      xArr(xCount) = xStr
      For I = xCount To 1 Step -1
      If I = 1 Then
      xStr = Mid(xArr(I), InStr(xArr(I), ",") + 1, Len(xArr(I)) - InStr(xArr(I), ","))
      Else
      xStr = xArr(I)
      End If
      If xDRg Is Nothing Then
      Set xDRg = Range(xStr)
      Else
      Set xDRg = Union(xDRg, Range(xStr))
      End If
      If (Len(xDRg.Address) >= 244) Or (xCount = 1) Then
      xDRg.EntireRow.Delete
      Set xDRg = Nothing
      End If
      Next
      Application.EnableEvents = True
      Application.ScreenUpdating = True
      End Sub