Pegar datos en la ultima fila vacía, pero desde la columna B

Tengo la siguiente macro que me copia un rango ("C31:J85") de una hoja a otra, y va pegando los datos desde la ultima fila vacía, pero siempre desde la columna A. Necesito hacer la mísma operación pero que empiece a pegar la fila de datos desde la columna B. Quien me pueda ayudar por favor lo necesito muy urgente.

@elsamatilde ayúdame por favor.

'Copiar a Base_Seguimiento
FilaPegarDatos = Sheets("Base_Seguimiento").Range("A1048576").End(xlUp).Row + 2
Range("C31:J85").Select
Selection.Copy
Sheets("Base_Seguimiento").Select
Cells(FilaPegarDatos, 2).Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
End Sub

Respuesta
1

[Hola 

Te paso la macro actualizada

Sub copiar()
    'Copiar a Base_Seguimiento
    Set h1 = Sheets("Base_Seguimiento")   ' Hoja de origen
    Set h2 = Sheets("Hoja2")              ' Hoja de destino
    '
    u = h1.Range("B" & Rows.Count).End(xlUp).Row + 2
    h1.Range("C31:J85").Copy
    h2.Range("B" & u).PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False
    Application.CutCopyMode = False
    '
    MsgBox "fin"
End Sub

¡Gracias! Ariel Muchas Gracias. Funcionó perfecto. En verdad me salvaste el día hermano. 

Bendiciones y Saludos desde colombia

Valorar como excelente la respuesta que está debajo saludos!

ARIEL hermano imagínate que no se qué sucedió pero el código ya no funciona hoy qué hago?

Ayúdame por favor hermano, me empieza a pegar desde la columna B de la hoja, pero desde la fila 86

[Hola 

¿De cuál fila debe empezar?

desde la fila vacía siguiente a la última fila con datos. la macro debe copiar los datos de una hoja y pegarlos en otra donde se va armando una base de datos cada vez que se ejecute la macro asociada a un botón. Ayúdame por favor. ayer me funcionó y hoy no sé que pasó o si debo hacer otra cosa. 

Sub copiar()
'Copiar a Base_Seguimiento
Set h1 = Sheets("CRONOGRAMA SEMANAL VENTAS.") ' Hoja de origen
Set h2 = Sheets("Base_Seguimiento") ' Hoja de destino
'
u = h1.Range("B" & Rows.Count).End(xlUp).Row + 2
h1.Range("C31:K85").Copy
h2.Range("B" & u).PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
'
MsgBox "fin"
End Sub

[Hola 

prueba así

Sub copiar()
    'Copiar a Base_Seguimiento
    Set h1 = Sheets("Base_Seguimiento")   ' Hoja de origen
    Set h2 = Sheets("Hoja2")              ' Hoja de destino
    '
    f = 2
    Do While h2.Cells(f, "B") <> ""
    f = f + 1
    Loop
    '
    h1.Range("C31:J85").Copy
    h2.Range("B" & f).PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False
    Application.CutCopyMode = False
    '
    MsgBox "fin"
End Sub

2 respuestas más de otros expertos

Respuesta
1

¡Gracias! hola muchas gracias. claro que voy a empezar a ver los tutoriales hoy mismo. Te agradezco todo lo demás que me puedas recomendar. 

Bendiciones y saludos desde colombia. 

Respuesta
1

La opción de Adriel es correcta pero a tu petición dejo mi comenrario para que ajustes tu propia macro. Reemplaza la letra A por B en donde dice Range("A1048576").

Hola Elsa, gracias por responder, la opción de cambiar el .Range fue lo primero que realicé pero no me corre igual y me desordena toda la info. Voy a tratar la opción de Ariel a ver que pasa.

Saludos desde Colombia.

Si la col A tiene datos y a partir de allí deseas pegar en col B, tu instrucción es la correcta solo que estás sumando 2 hacia abajo en lugar de 1, lo que te dejará una fila libre.

Para la imagen, tu instrucción dará como resultado fila 13.

FilaPegarDatos =  Sheets(".......").Range("A1048576").End(xlUp).Row + 2

Ahora, si no te importa lo que haya en A y siempre querrás que mire en B cuál es la fila siguiente, debes buscar el final desde B tal como te indiqué:

Y por último, si debe buscar la última fila ocupada en B pero pegar desde A, las instrucciones serían así:

FilaPegarDatos = Sheets(".....").Range("B1048576").End(xlUp).Row + 2

y el pegado desde A:

Cells(FilaPegarDatos, 1).Select

No hay ningún desorden... salvo que a la hoja (o consulta) le esté faltando algún detalle que no comentas. Te recuerdo que al sumar 2 estás dejando 1 fila libre demás.

Sdos!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas