Cómo usar VBA para insertar filas en Excel: 3 métodos fiables

Para insertar filas en Excel con VBA, utilice el Insertmétodo en una fila de la hoja de cálculo. Los tres ejemplos siguientes muestran cómo agregar una o varias filas en blanco, insertar una copia de una fila existente y crear una fila en blanco sin formato heredado. Cada macro se dirige a una hoja de cálculo llamada Data; reemplace ese nombre con el nombre exacto de la pestaña en su libro de trabajo.

Paso 1: Prepare el libro de trabajo y abra el editor de VBA.

Utilice la versión de escritorio de Excel. Excel para la web puede abrir un libro de trabajo que contenga macros, pero no puede crear, editar ni ejecutar macros VBA. Si su libro de trabajo contiene datos importantes, guarde una copia de seguridad antes de ejecutar el código, ya que la inserción de filas desplaza las filas que se encuentran debajo del punto de inserción.

En Windows, pulsa Alt+F11 para abrir el Editor de Visual Basic (VBE). También puedes seleccionar Desarrollador > Visual Basic . En el VBE, selecciona Insertar > Módulo y pega una macro en el módulo en blanco. Las instrucciones del VBE de Microsoft muestran el mismo flujo de trabajo para los módulos.

Excel y el Editor de Visual Basic con el Módulo1 abierto y una macro que inserta la fila 4 en la hoja de cálculo Datos.
Abra un módulo VBA estándar en el Editor de Visual Basic para agregar la macro.

Paso 2: Elija uno de los tres métodos de inserción de filas.

Método 1: Insertar una o varias filas en blanco

Esta macro inserta una fila completa de la hoja de cálculo encima de la fila 4 actual. El Shift:=xlDownargumento le indica a Excel que mueva las celdas existentes hacia abajo para dejar espacio. La documentación de referencia Range.Insert describe las opciones de desplazamiento y formato.

Sub InsertOneRow()
    ThisWorkbook.Worksheets("Data").Rows(4).Insert Shift:=xlDown
End Sub

Para insertar dos filas a partir de la fila 3, utilice un rango de filas:

Sub InsertTwoRows()
    ThisWorkbook.Worksheets("Data").Rows("3:4").Insert Shift:=xlDown
End Sub

Se insertan las filas 3 y 4, y las filas existentes se desplazan hacia abajo. Modifique los números de fila para elegir dónde comienzan las nuevas filas y cuántas se agregarán. La ThisWorkbookreferencia indica que la macro debe guardarse en el libro de trabajo que desea modificar.

Hoja de cálculo de Excel con dos filas en blanco insertadas entre Alpha y Bravo, desplazando los registros posteriores hacia abajo.
Al insertar las filas 3 y 4, se crea un espacio de dos filas y se desplazan los registros existentes hacia abajo.

Método 2: Insertar una copia de una fila existente

Utilice esta versión cuando la nueva fila deba repetir los valores, fórmulas y formato de una fila existente. Primero crea un espacio en la fila 6 y luego copia la fila 2 en ese nuevo espacio. La fila 2 original permanece en su lugar. Microsoft documenta el argumento de destino opcional en su referencia de Range.Copy .

Sub InsertCopyOfRow()
    With ThisWorkbook.Worksheets("Data")
        .Rows(6).Insert Shift:=xlDown
        .Rows(2).Copy Destination:=.Rows(6)
    End With
End Sub

Reemplace 2con el número de fila de origen y 6con la fila donde debería aparecer el duplicado. Dado que se copia la fila completa, revise las fórmulas y referencias en la copia insertada antes de utilizarla.

Hoja de cálculo de Excel con una copia de la fila Alfa insertada en la fila 6, mientras que la fila original permanece en su lugar.
La fila Alpha copiada aparece en la fila 6; la fila original permanece en la fila 2.

Método 3: Insertar una fila sin copiar el formato.

Excel puede transferir el formato de una fila adyacente a una fila insertada. Inserte la fila y, a continuación, ClearFormatselimine ese formato:

Sub InsertUnformattedRow()
    With ThisWorkbook.Worksheets("Data")
        .Rows(3).Insert Shift:=xlDown
        .Rows(3).ClearFormats
    End With
End Sub

Esto borra el formato de la fila insertada en la hoja de cálculo. No elimina los valores de las demás filas. La documentación de ClearFormats de Microsoft describe este método.

Hoja de cálculo de Excel con una fila 3 en blanco y código VBA que llama a EntireRow.Insert y ClearFormats.
ClearFormats elimina el formato de celda heredado de la fila insertada.

Paso 3: Ejecute la macro y compruebe el resultado.

Vuelva al Editor de Visual Basic (VBE), coloque el cursor en cualquier parte del procedimiento que desea ejecutar y pulse F5 . También puede volver a Excel y usar Desarrollador > Macros , seleccionar el nombre de la macro y elegir Ejecutar . Consulte la guía de Microsoft para ejecutar una macro en Excel para conocer las opciones disponibles.

Antes de guardar, compruebe que la fila o filas esperadas se hayan insertado en la hoja de cálculo correspondiente. Si desea conservar el código VBA en el libro, guárdelo como un libro de Excel habilitado para macros (.xlsm) ; al guardarlo como un .xlsxarchivo normal, las macros VBA no se conservan. Microsoft explica esto en sus instrucciones para guardar macros . Ejecute macros únicamente desde fuentes de confianza y siga la política de seguridad de macros de su organización.

Problemas comunes

  • “Índice fuera de rango”: El nombre de la hoja de cálculo en el código no coincide exactamente con el nombre de la pestaña. Actualice el código "Data", incluyendo los espacios si la pestaña los contiene.
  • Las filas aparecen en el libro de trabajo incorrecto: El código utiliza ThisWorkbook, que hace referencia al archivo que contiene la macro. Guarde el módulo en el libro de trabajo que desea editar.
  • En un navegador no se ejecuta ningún archivo: abra el archivo en Excel para escritorio; las macros VBA no se pueden ejecutar en Excel para la web. Consulte la guía de Microsoft sobre VBA para Excel para la web .

Estos ejemplos insertan filas completas de la hoja de cálculo. Si los datos son una tabla de Excel y desea agregar un registro a la tabla, utilice el ListRows.Addmétodo de la tabla para que la nueva entrada pertenezca a ella.

Dejar un comentario

Cómo mover una imagen en Microsoft Word

Cómo mover una imagen en Microsoft Word

Aprende a arrastrar una imagen en Word, a elegir el ajuste de texto, a mantenerla dentro de un párrafo o a fijarla en la página, y a solucionar problemas con imágenes que no se mueven.

Cómo insertar una casilla de verificación en Excel: dos métodos sencillos

Cómo insertar una casilla de verificación en Excel: dos métodos sencillos

Aprende a insertar una casilla de verificación en Excel con la herramienta "En celda", a contar los elementos seleccionados con fórmulas o a agregar un control de formulario vinculado en versiones de escritorio anteriores.

Cómo autocompletar letras en Excel: de la A a la Z y más allá

Cómo autocompletar letras en Excel: de la A a la Z y más allá

Genere letras de la A a la Z, letras minúsculas o etiquetas más allá de la Z en Excel con una fórmula de controlador de relleno, una SECUENCIA o una lista personalizada reutilizable.

Cómo tachar texto en Excel: Atajos y métodos paso a paso

Cómo tachar texto en Excel: Atajos y métodos paso a paso

Aprende a tachar texto en Excel para Windows, Mac y la web, a dar formato a parte de una celda y a eliminar la línea sin borrar su valor.

¿Qué es Microsoft Access? ¿Cómo funcionan sus herramientas de base de datos?

¿Qué es Microsoft Access? ¿Cómo funcionan sus herramientas de base de datos?

Microsoft Access es una aplicación de base de datos para Windows que permite almacenar registros relacionados, crear consultas, generar formularios de entrada de datos y crear informes. Descubra cómo funciona y cuándo es la opción más adecuada.

Importación y exportación de Office Outlook 2010: Transferencia de datos con un archivo PST

Importación y exportación de Office Outlook 2010: Transferencia de datos con un archivo PST

Aprende a importar un archivo PST a Outlook 2010 o a exportar correo electrónico, contactos, calendario y tareas. Sigue los menús correctos y evita carpetas faltantes o duplicadas.

Cambiar la altura y el ancho de las líneas de cuadrícula en Word 2010

Cambiar la altura y el ancho de las líneas de cuadrícula en Word 2010

Aprenda a ajustar la altura y el ancho de las líneas de cuadrícula en Word 2010, cambiar la frecuencia de las líneas visibles y establecer el espaciado horizontal y vertical subyacente de la cuadrícula de dibujo.

Recuperar una contraseña de Outlook PST con Nucleus Kernel

Recuperar una contraseña de Outlook PST con Nucleus Kernel

Recupere una contraseña olvidada de un archivo PST de Outlook siguiendo los pasos actuales de Kernel, que incluyen cómo identificar el archivo correcto, realizar una copia de seguridad y comprobar los límites de la herramienta.

Cómo insertar una página web en vivo en una diapositiva de PowerPoint

Cómo insertar una página web en vivo en una diapositiva de PowerPoint

Utilice el complemento LiveWeb para insertar un sitio web en una diapositiva de PowerPoint, configurar su tamaño y comportamiento de actualización, y comprobar la compatibilidad antes de la presentación.

Agrega los días festivos nacionales a tu calendario de Outlook.

Agrega los días festivos nacionales a tu calendario de Outlook.

Agregue días festivos específicos de cada país en la nueva versión de Outlook, Outlook en la web o la versión clásica de Outlook. Aprenda cómo evitar eventos duplicados y compruebe si faltan fechas de 2026-2027.