VBA Copiar / Pegar Filas y Columnas

Written by

Editorial Team

Reviewed by

Steve Rynearson

Translated by

Dennis Madrid

Last updated on febrero 20, 2022

Este tutorial le enseñará cómo copiar (o cortar) filas enteras o columnas utilizando VBA. Cubrimos copiar y pegar rangos de celdas en otro artículo.

Primero le mostraremos cómo pegar o insertar filas/columnas copiadas y discutiremos las diferencias. Luego le mostraremos todas las diferentes maneras de hacer referencia a filas y columnas al copiar o cortar.

Filas y Columnas – Pegar vs. Insertar

Al pegar filas y columnas tiene dos opciones: Puede pegar sobre la fila (o columna) existente o puede insertar una nueva fila (o columna).

Veamos la diferencia…

 

Copiar y pegar sobre la fila / columna existente

Esto copiará la fila 1 y la pegará en la fila 5 existente:

Range("1:1").Copy Range("5:5")

Esto copiará la columna C y la pegará en la columna E:

Range("C:C").Copy Range("E:E")

Copiar e Insertar Fila / Columna

En su lugar, puede insertar la fila o columna copiada y desplazar las filas o columnas existentes para hacer espacio.

Esto copiará la fila 1 y la insertará en la fila 5, desplazando las filas existentes hacia abajo:

Range("1:1").Copy
Range("5:5").Insert

Esto copiará la columna C y la insertará en la columna E, desplazando las columnas existentes hacia la derecha:

Range("C:C").Copy
Range("E:E").Insert

Copiar toda la fila

A continuación mostraremos varias formas de copiar la fila 1 y pegarla en la fila 5.

Range("1:1").Copy Range("5:5")
Range("A1").EntireRow.Copy Range("A5")
Rows(1).Copy Rows(5)

Cortar y pegar filas

Simplemente usa Cut en lugar de Copy para cortar y pegar filas:

Rows(1).Cut Rows(5)

Copiar Varias Filas

Aquí hay ejemplos de copiar múltiples filas a la vez:

Range("5:7").Copy Range("10:13")
Range("A5:A7").EntireRow.Copy Range("A10:A13")
Rows(5:7).Copy Rows(10:13)

Copiar columna entera

Puede copiar columnas enteras de forma similar a la copia de filas enteras:

Range("C:C").Copy Range("E:E")
Range("C1").EntireColumn.Copy Range("C1").EntireColumn
Columns(3).Copy Range(5)

Cortar y pegar columnas

Para cortar y pegar columnas basta con utilizar Cut en lugar de Copy:

Range("C:C").Cut Range("E:E")

Copiar varias columnas

Aquí hay ejemplos de cómo copiar varias columnas a la vez:

Range("C:E").Copy Range("G:I")
Range("C1:E1").EntireColumn.Copy Range("G1:I1")
Columns(3:5).Copy Columns(7:9)

Copiar filas o columnas en otra hoja

Para copiar a otra hoja, simplemente utiliza el objeto Sheets:

Sheets("hoja1").Range("C:E").Copy Sheets("hoja2").Range("G:I")

Cortar filas o columnas en otra hoja

Puedes utilizar exactamente la misma técnica para cortar y pegar filas o columnas en otra hoja.

Sheets("hoja1").Range("C:E").Cut Sheets("hoja2").Range("G:I")
vba-free-addin

Complemento de Ejemplos de Código de VBA

Acceda fácilmente a todos los ejemplos de código que se encuentran en nuestro sitio.

Simplemente navegue al menú, haga clic y el código se insertará directamente en su módulo. Complemento .xlam.

(¡No se requiere instalación!)

Descarga gratuita

Return to VBA Code Examples