Este tutorial demostrará cómo usar VBA para insertar filas y columnas en Excel.
Para insertar filas o columnas usaremos el Insertar método.
Insertar una sola fila o columna
Insertar nueva fila
Para insertar una sola fila, puede utilizar el objeto Filas:
1 | Filas (4) .Insertar |
O puede usar el objeto Range junto con EntireRow:
1 | Rango ("b4"). Fila completa. Insertar |
Insertar nueva columna
De manera similar a insertar filas, podemos usar el objeto Columns para insertar una columna:
1 | Columnas (4) .Insertar |
O el objeto Range, junto con EntireColumn:
1 | Rango ("b4"). Columna completa. Insertar |
Insertar varias filas o columnas
Insertar varias filas
Al insertar varias filas con el Objeto de filas, debe ingresar las filas entre comillas:
1 | Filas ("4: 6"). Insertar |
Insertar varias filas con el objeto de rango funciona igual que con una sola fila:
1 | Rango ("b4: b6"). Fila completa. Insertar |
Insertar varias columnas
Al insertar varias columnas con el objeto Columns, ingrese la columna letras entre comillas:
1 | Columnas ("B: D"). Insertar |
Insertar varias columnas con el objeto de rango funciona igual que con una sola columna:
1 | Rango ("b4: d4"). Columna completa. Insertar |
Insertar - Shift & CopyOrigin
los Insertar método tiene dos argumentos opcionales:
- Cambio - En qué dirección cambiar las celdas
- CopiarOrigen - Qué formato de celda copiar (arriba, abajo, izquierda o derecha)
El argumento Shift es irrelevante al insertar filas o columnas enteras. Solo le permite indicar cambiar hacia abajo o hacia la derecha:
- xlShiftDown - Desplazar celdas hacia abajo
- xlShiftToRight - Desplazar celdas a la derecha
Como puede ver, no puede desplazarse hacia arriba o hacia la derecha.
los CopiarOrigen El argumento tiene dos entradas potenciales:
- xlFormatFromLeftorAbove - (0) Las celdas recién insertadas toman el formato de las celdas de arriba o de la izquierda
- xlFormatFromRightorBelow (1) Las celdas recién insertadas toman el formato de las celdas de abajo o de la derecha.
Veamos algunos ejemplos de CopiarOrigen argumento. Estos son nuestros datos iniciales:
Este ejemplo insertará una fila, tomando el formato de la fila anterior.
1 | Filas (5) .Insert, xlFormatFromLeftOrAbove |
Este ejemplo insertará una fila, tomando el formato de la fila de abajo.
1 | Filas (5) .Insert, xlFormatFromRightOrBelow |
Otros ejemplos de encartes
Insertar filas o columnas copiadas
Si desea insertar una fila copiada, usaría un código como este:
12 | Rango ("1: 1"). CopiarRango ("5: 5"). Insertar |
Aquí copiamos la Fila 1 y la insertamos en la Fila 5.
Insertar filas según el valor de la celda
Esto recorrerá un rango, insertando filas según los valores de celda:
1234567891011 | Sub InsertRowswithSpecificValue ()Atenuar celda como rangoPara cada celda del rango ("b2: b20")Si cell.Value = "insert" Entoncescelda.EntireRow.InsertTerminara siSiguiente celdaEnd Sub |
Eliminar filas o columnas
Para eliminar filas o columnas, simplemente use el Borrar método.
1234567 | Filas (1) .EliminarRango ("a1"). EntireRow.DeleteColumnas (1) .EliminarRango ("a1"). EntireColumn.Delete |