Macro de VBA Excel: mantener y eliminar hojas según los datos de la celda

Macro de VBA Excel: mantener y eliminar hojas según los datos de la celda

Esta puede ser una pregunta muy simple pero no puedo resolverla. Ejecuto una macro que crea 13 hojas de cálculo. De esos 13 pliegos, varios de ellos no tendrán nada en la columna A2. Me gustaría poder crear una macro en VBA que elimine todos los pliegos que no tengan nada en A2 pero mantenga los pliegos que tengan datos en A2. Intenté usar:

Sub Delete()
Dim ws As Worksheet
  For Each ws In ActiveWorkbook.Worksheets
    Application.DisplayAlerts = False
      If LenB(ActiveSheet.Range("A2")) = 0 Then ActiveSheet.Delete
    Application.DisplayAlerts = True
  Next ws
End Sub

Esto elimina la hoja activa si no hay nada en A2, por lo que es un progreso para mí, pero no pasará automáticamente a la siguiente hoja.

Respuesta1

Su código no es consistente, debería usarlo en todas partes wsen lugar de ActiveSheet.

información relacionada