Las macros de VBA hacen que la entrada de datos sea más eficiente y fácil cuando se usa Microsoft Excel. Puedes cortar, escribir, copiar y pegar celdas a otras secciones de tu libro de Excel con unos simples códigos.
Pero por supuesto, la pregunta es: ¿cómo se copian y pegan las células con macros VBA? Es más fácil de lo que parece, así que vamos a ver con qué te enfrentas.
Cómo copiar/cortar y pegar una sola célula
Cuando sus datos sólo necesitan pasar de una célula a otra, se utiliza un simple código que apunta a una sola célula y la hace rebotar a otra. Puedes copiar o cortar la celda deseada y hacer que se pegue en cualquier celda de tu elección. No tienen que estar una al lado de la otra.
Copiar y pegar el código
En este ejemplo, «Rango(«A1″).copy» se usa para apuntar primero a la celda que quieres mover. El código se termina con «Rango(«B1″)» que es el resultado final. Al pulsar F8 circulará por las líneas de código, siempre que hayas seleccionado el libro de trabajo correcto de Microsoft Excel.
Después de seleccionar «End Sub» con F8, el texto en A1 ha sido copiado y movido a B1 con A1 aún teniendo su información intacta.
Código de cortar y pegar
Por supuesto, si quieres mover datos pero dejas una celda en blanco, puedes cortar los datos y moverlos a otro lugar. A diferencia de la copia, este método deja A1 vacío. En el ejemplo anterior, «.Copiar» ha sido reemplazado por » .Cortar «.
Cómo copiar/cortar y pegar un rango de células
Tal vez necesites mover más de una célula, digamos, un rango de células. Ciertamente puedes lograr eso con Microsoft Excel.
Copiar y pegar el código
En el ejemplo anterior «Rango(«A1:A3).Copiar» se utiliza para apuntar no sólo a la primera celda, sino a las celdas adicionales posteriores. Cada celda entre A1 y A3 será seleccionada.
La macro se completa con «Rango(«B1:B3″)» indicando dónde se colocarán las celdas seleccionadas.
Código de cortar y pegar
Si quieres borrar la información de las celdas seleccionadas al pegarlas, puedes sustituir «.Copiar» por » .Cortar .»
Cómo copiar/cortar y pegar una columna de células
En algunos casos, es necesario mover columnas enteras de células. ¿Se puede hacer eso? Absolutamente, y con relativa facilidad.
Copiar y pegar el código
En este ejemplo, la columna en sí misma es el objetivo en lugar de cualquier celda usando «Range(«A:A»).Copy». Usando «Rango(«B:B»)», todos los datos existentes en la columna A serán copiados en la columna B.
Código de cortar y pegar
Si quieres, digamos, que la columna A sea borrada al mismo tiempo, puedes usar » .Cortar » en lugar de «.Copiar» para pegar la información en la columna B. Una vez pegada, la información original de la columna A ya no existirá.
Cómo copiar/cortar y pegar una fila de células
Por otro lado, cuando se necesita copiar y pegar una fila de celdas, se puede hacer con los códigos de abajo. Elige el que quieras.
Copiar y pegar el código
A diferencia de la copia de una columna, la copia de filas tiene como objetivo el número de fila . Como se puede ver en el ejemplo anterior, «Range(«1:1″).Copy» apunta a la propia fila, no a la columna. Al terminar la macro con «Rango(«2:2)», todo en la Fila 1 ha sido copiado a la Fila 2.
Código de cortar y pegar
En el caso de que, digamos, la fila 1 necesite estar libre de datos, puedes usar » .Cortar » en lugar de «.Copiar» para pegar la información a una nueva fila sin dejar una fila duplicada.