Cuando termine el "bucle", seleccione la primera celda del rango

Cuando termine el "bucle", seleccione la primera celda del rango

Tengo un script que recorre las secciones de una hoja (Procedimiento de prueba de función) y pega esos valores en otra hoja (Resultados) en la celda L2.

La forma en que está configurado actualmente es realizar un bucle para buscar el número de secciones, copiar y pegar esos valores en elHoja de resultadosy seleccione la siguiente celda vacía en la columna L.

Eso funciona bien, siempre y cuando no se presione el botón varias veces, porque cuando se presiona el botón varias veces, agregará los resultados copiados debajo de los resultados que ya estaban allí.

Lo que quiero hacer es modificar el script para recorrer las secciones disponibles y luego seleccionar la celda L2 para pegar los resultados actualizados sobre los resultados existentes si se presiona el botón varias veces.

Esto debería ser simple, pero no puedo entenderlo. Además, el rango deseado se ha denominado "ATPResults".

Sub Copy_ATP_Tables()

 Dim SectionATP As Long, NextRow As Long

  For SectionATP = 1 To 35 '36

    NextRow = Sheets("Results").Range("L" & Rows.Count).End(xlUp).Row + 1 'Next empty row

    Sheets("Acceptance Test Procedure").Range("APTSec" & SectionATP).Columns("A:H").Copy _
    Destination:=Sheets("Results").Range("L" & NextRow) 'SpecialCells(xlCellTypeVisible)

'        Range("FTPSec" & Section).Columns("G:H").SpecialCells(xlCellTypeVisible).Copy _
'            Destination:=Sheets("Results").Range("N" & NextRow)

  Next SectionATP

'    Sheets("Results").Range("ATPResults").Select
'    For SectionATP = 35 To 35

End Sub

Respuesta1

Espero haber entendido tu pregunta, la modifiqué para que siempre comience en L2:

Sub Copy_ATP_Tables()

 Dim SectionATP As Long, NextRow As Long
 NextRow = Sheets("Results").Range("L" & 2) 'This line defines where to start 

  For SectionATP = 1 To 35 '36

    Sheets("Acceptance Test Procedure").Range("APTSec" & SectionATP).Columns("A:H").Copy _
    Destination:=Sheets("Results").Range("L" & NextRow) 'SpecialCells(xlCellTypeVisible)

    NextRow = Sheets("Results").Range("L" & Rows.Count).End(xlUp).Row + 1 'Moved to the end of the loop

  Next SectionATP
End Sub 

información relacionada