Hay ocasiones en las que tenemos que crear o agregar una hoja y más tarde descubrimos que no se usaba esa hoja, por lo que necesitamos eliminar la hoja rápidamente del libro de trabajo. Este artículo se centra en ahorrar tiempo y proporcionar código para eliminar hojas sin ningún cuadro de mensaje de aviso utilizando macro / código vba.

Puede ser una hoja o varias. Y Excel da una alerta emergente para confirmar la eliminación de la hoja. Si es una hoja, es manejable. Pero si tiene que eliminar varias hojas, obtendrá una ventana emergente por hoja.

A menudo crea varias hojas usando VBA. Pero al final, en realidad no los necesita. Desea eliminarlos una vez que haya terminado su trabajo. Mantendrá su archivo más ligero, rápido y sensible.

El código VBA para eliminar una hoja es simple

Sheets("SheetName").Delete

Digamos que tiene este código para agregar una hoja y luego eliminarlo cuando termine el trabajo.

Sub AddAndDeleteSheet()

Sheets.Add 'Adds a new sheet to the active workbook

'----

'----

'----

'some work on sheet done

ActiveSheet.Delete 'deletes the active Activesheet

End Sub

Cuando ejecute este código, Sheets.Add funcionará sin ningún aviso, pero cuando el compilador llegue a ActiveSheet.Delete, aparecerá un mensaje como este.

pasted image 0 (1)

Dado que está eliminando hojas usando VBA, sabe lo que está haciendo.

Le gustaría decirle a Excel que no muestre esta advertencia y elimine la maldita hoja.

Para hacer esto, apagaremos el botón de alerta de visualización de la aplicación Excel.

El código siguiente evitará este mensaje de alerta y la hoja se eliminará sin ningún indicio.

Sub AddAndDeleteSheet()

Application.DisplayAlerts = False 'switching off the alert button

Sheets.Add

'----

'----

'----

'some work on sheet done

ActiveSheet.Delete

Application.DisplayAlerts = True 'switching on the alert button

End Sub

Aquí estamos eliminando Activesheet usando VBA. Puede eliminar cualquier hoja usando VBA. Simplemente escriba Hojas («Nombre de hoja»). Eliminar. Continuando …​

DisplayAlerts es una propiedad del objeto Application en VBA. Aquí lo apagamos al principio de nuestro código y lo encendemos al final del código. El código anterior confirmará la eliminación sin ningún indicio.

_Nota: _ * El código anterior ignorará todas las advertencias lanzadas por Excel. Si desea permitir solo la eliminación de hojas, use esta línea .

Application.DisplayAlerts = False 'switching off the alert button

ActiveSheet.Delete

Application.DisplayAlerts = True 'switching on the alert button

Esto ignorará solo la advertencia de eliminación de hojas.

Pro Tip: Estas líneas de código hacen que su código VBA sea más eficiente. Úselos siempre al comienzo de su macro y vuelva a encenderlos donde se espera que su código salga de la rutina . _Warning _ * : Si no se enciende antes de salir de la subrutina , es posible que no vea ninguna advertencia. Incluso si su código no se está ejecutando. Esto puede causar muchos problemas . Si tiene varias hojas para eliminar y está usando un bucle, pruebe este código –

Option Explicit

Sub macro2()

Dim i As Long

Application.DisplayAlerts = False

For i = 1 to Worksheets.Count

If Worksheets(i).Name Like "Test*" Then Worksheets(i).Delete

Next i

Application.DisplayAlerts = True

End Sub

Eso es. Se hace. Es tan fácil como encender y apagar el ventilador. ¿No es así?

image 29

Si te gustaron nuestros blogs, compártelo con tus amigos en Facebook. Y también puedes seguirnos en Twitter y Facebook.

Nos encantaría saber de usted, háganos saber cómo podemos mejorar, complementar o innovar nuestro trabajo y hacerlo mejor para usted. Escríbanos a [email protected]

Descargar archivo

`link: /wp-content-uploads-2013-07-Delete-sheets-without-confirmation-prompts-using-VBA-in-Microsoft-Excel.xls [__ Eliminar hojas sin mensajes de confirmación usando VBA en Microsoft Excel]

Artículos relacionados:

link: / printing-in-vba-change-the-default-printer-using-vba-in-microsoft-excel [Cambiar la impresora predeterminada usando VBA en Microsoft Excel 2016]

link: / general-topics-in-vba-turn-off-warning-messages-using-vba-in-microsoft-excel [Desactivar mensajes de advertencia usando VBA en Microsoft Excel 2016]

link: / menus-toolbars-status-bar-in-vba-display-a-message-on-the-statusbar-using-vba-in-microsoft-excel [Mostrar un mensaje en la barra de estado de Excel VBA]

link: / general-topics-in-vba-insert-pictures-using-vba-in-microsoft-excel [Insertar imágenes usando VBA en Microsoft Excel 2016]

link: / using-loops-how-to-loop-through-sheets-in-excel-using-vba [Cómo recorrer las hojas en Excel usando VBA]

Artículos populares:

link: / keyboard-formula-shortcuts-50-excel-shortcuts-to-incrementa-your-productividad [50 accesos directos de Excel para aumentar su productividad]

link: / formulas-and-functions-Introduction-of-vlookup-function [Cómo usar la función VLOOKUP en Excel]

link: / tips-countif-in-microsoft-excel [Cómo usar la función COUNTIF en Excel]

link: / excel-formula-and-function-excel-sumif-function [Cómo usar la función SUMIF en Excel]