Macro de ejemplo para insertar o eliminar filas o columnas en varias hojas en Excel

Resumen

Este artículo contiene una macro de ejemplo de Microsoft Visual Basic para Aplicaciones (procedimiento Sub) que puede usar para insertar o eliminar filas o columnas en varias hojas de cálculo en Microsoft Excel.

Más información

Microsoft proporciona ejemplos de programación con fines ilustrativos únicamente, sin ninguna garantía, ya sea expresa o implícita. Esto incluye, entre otras, las garantías implícitas de comerciabilidad e idoneidad para un fin determinado. Se considera que está familiarizado con el lenguaje de programación que se muestra y con las herramientas para crear y depurar procedimientos. Los ingenieros de soporte técnico de Microsoft pueden explicarle la funcionalidad de un determinado procedimiento. Sin embargo, no modificarán estos ejemplos para proporcionar una funcionalidad adicional o procesos de construcción para que se cumplan sus requisitos específicos. Para insertar o eliminar filas o columnas en varias hojas, use una instrucción For Each...Next para recorrer en bucle todas las hojas necesarias o seleccionar las filas o columnas antes de realizar la inserción o eliminación.

Nota:

Las macros de ejemplo siguientes solo funcionan en un intervalo contiguo de columnas o filas.

Macro de ejemplo que usa un bucle para insertar filas en varias hojas

Sub Insert_Rows_Loop()
     Dim CurrentSheet As Object

     ' Loop through all selected sheets.
     For Each CurrentSheet In ActiveWindow.SelectedSheets
        ' Insert 5 rows at top of each sheet.
        CurrentSheet.Range("a1:a5").EntireRow.Insert
     Next CurrentSheet
End Sub

Macro de ejemplo para seleccionar una columna e insertar una nueva columna

La siguiente macro de ejemplo selecciona toda la columna antes de insertar nuevas columnas:

Sub Select_Insert_Column()
    Dim MyRange as Object
    ' Store the selected range in a variable.
    Set MyRange = Selection
    ' Select the entire column.
    Selection.EntireColumn.Select
    ' Insert Columns in all selected sheets.
    Selection.Insert
    ' Reselect the previously selected cells.
    MyRange.Select
End Sub