¿Cómo eliminar una hoja si el nombre de la hoja no está en una lista?
Digamos, tengo una hoja de trabajo que contiene una lista de nombres de hojas dentro del libro de trabajo en la columna A como se muestra a continuación, y algunos nombres de hojas en el libro de trabajo no están en la lista, ahora, quiero eliminar las hojas que no están en la lista de la columna A. ¿Cómo podría resolver esta tarea en Excel de forma rápida y sencilla?
Eliminar hojas que no están en una lista específica con código VBA
Eliminar hojas que no están en una lista específica con código VBA
Normalmente, puede comprobar los nombres de las hojas uno por uno y eliminar los que no están en la lista de nombres de hojas. Pero, aquí, puedo hablar de un código VBA para manejarlo. Haz lo siguiente:
1. Vaya a la hoja de trabajo que contiene la lista de nombres de hojas y luego mantenga presionada la tecla ALT + F11 teclas para abrir el Microsoft Visual Basic para aplicaciones ventana.
2. Luego haga clic recuadro > Móduloy pegue el siguiente código en el Módulo Ventana.
Código de VBA: elimine las hojas que no están en una lista
Sub Deletenotinlist()
'Updateby Extendoffice
Dim i As Long
Dim cnt As Long
Dim xWb, actWs As Worksheet
Set actWs = ThisWorkbook.ActiveSheet
cnt = 0
Application.DisplayAlerts = False
For i = Sheets.Count To 1 Step -1
If Not ThisWorkbook.Sheets(i) Is actWs Then
xWb = Application.Match(Sheets(i).Name, actWs.Range("A2:A6"), 0)
If IsError(xWb) Then
ThisWorkbook.Sheets(i).Delete
cnt = cnt + 1
End If
End If
Next
Application.DisplayAlerts = True
If cnt = 0 Then
MsgBox "Not find the sheets to be seleted", vbInformation, "Kutools for Excel"
Else
MsgBox "Have deleted" & cnt & "worksheets"
End If
End Sub
Note: En el código anterior, A2: A6 es la referencia de celda que contiene los nombres de las hojas, puede cambiarla según sus necesidades.
3. Y luego presione F5 para ejecutar este código, las hojas que no están en la lista se han eliminado a la vez, vea la captura de pantalla:
Las mejores herramientas de productividad de oficina
Mejore sus habilidades de Excel con Kutools for Excel y experimente la eficiencia como nunca antes. Kutools for Excel ofrece más de 300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haga clic aquí para obtener la función que más necesita...
Office Tab lleva la interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil
- Habilite la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abra y cree varios documentos en nuevas pestañas de la misma ventana, en lugar de en nuevas ventanas.
- ¡Aumenta su productividad en un 50% y reduce cientos de clics del mouse todos los días!