Copiar y pegar Datos de una celda en excel, intercalando con columnas en blanco vba

Lo que deseo para mi proyecto es como sigue: tengo cuatro columnas en la hoja1, exactamente son las celdas A9, B9, C9 y D9 estas columnas tienen datos como Numero de Orden, Nombre, Símbolo y Código respectivamente, y los datos son varios, es decir no tienen un rango exacto porque varían, pueden ser más o menos datos cada vez. Lo que requiero es poder copiar estos datos de la hoja1 a la hoja2 en las mismas celdas, es decir A9, B9, C9 y D9, Numero de Orden, Nombre, Símbolo y Código respectivamente, pero alternando con columnas en blanco, debiendo quedar algo así:

ColumnaA                ColumnaB       ColumnaC    ColumnaD    ColumnaE    ColumnaF    ColumnaG

Numero de Orden     "Vacia"             Nombre         "Vacia"          Simbolo         "vacia"         Codigo

1 Respuesta

Respuesta
1

Te anexo la macro

Sub copiar_celdas2()
    Set h1 = Sheets("Hoja1")
    Set h2 = Sheets("Hoja2")
    u1 = h1.Range("A" & Rows.Count).End(xlUp).Row
    If u1 > 8 Then
        h1.Range("A9:A" & u1).Copy
        H2. Range("A9"). PasteSpecial xlValues
 h1.Range("B9:B" & u1). Copy
 h2. Range("C9"). PasteSpecial xlValues
 h1.Range("C9:C" & u1). Copy
 h2. Range("E9"). PasteSpecial xlValues
 h1.Range("D9:D" & u1). Copy
 h2. Range("G9"). PasteSpecial xlValues
    End If
    Application.CutCopyMode = False
    MsgBox "Celdas copiadas"
End Sub

Hola Dante estoy probando la macro que me.enviaste, y el.Error me.sale en la parte : u1 = h1. Range ("A" ....etc) , me sale un mensaje de error definido por la aplicación o el objeto y esa parte se sombrea de amarillo.

Lo.Copié como me enviaste, tal vez tengo que declarar alguna variable o.no sé, y una consulta más esa parte que te menciono, que es lo que hace.

Gracias 

Las mismas interrogantes.

Cómo se llaman tus hojas, modificaste algo en la macro, los datos están tal y como los pusiste en el ejemplo, es decir, empiezan en la fila 9.

Tienes fórmulas, tienes celdas protegidas, o la hoja protegida u hoja oculta.

¿Declaraste las variables en alguna otra parte?


Si quieres declarar las variables, quedaría así:

Sub copiar_celdas2()
    dim h1, h2, u1
    Set h1 = Sheets("Hoja1")
    Set h2 = Sheets("Hoja2")
    u1 = h1.Range("A" & Rows.Count).End(xlUp).Row
    If u1 > 8 Then
        H1.Range("A9:A" & u1). Copy
        H2. Range("A9"). PasteSpecial xlValues
H1.Range("B9:B" & u1). Copy
H2. Range("C9"). PasteSpecial xlValues
H1.Range("C9:C" & u1). Copy
H2. Range("E9"). PasteSpecial xlValues
H1.Range("D9:D" & u1). Copy
H2. Range("G9"). PasteSpecial xlValues
    End If
    Application.CutCopyMode = False
    MsgBox "Celdas copiadas"
End Sub

Esta línea

u1 = h1.Range("A" & Rows. Count).End(xlUp). Row

Es para encontrar la última celda con datos de la columna "A", de esa forma la macro copia de A9 hasta A y la última celda con datos.


Puedes poner 2 imágenes, una con la información de tu hoja par ver qué tienes, y otra con el mensaje de error.

Creo que no llegó mi respuesta, no puedo anexar ninguna foto no se por qué, ahora tengo que hAcer algo extra, ósea a parte de copiar la columna B de la hoja1 a la columna DE de la. Hoja 2 y así hasta la columna DE de la.hoja1. Tengo que copiar la fila B11 a la fila de la.hoja1 a la fila B12de la hoja2 y así sucesivamente hasta que no hayan datos

Sin las imágenes no puedo saber cómo están tus dato y no puedo determinar cuál es la causa del problema. Si necesitas algo extra, con gusto te ayudo, pero debemos revisar por qué estás teniendo errores.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas