Macro para copiar datos de una tabla a otra con loop / bucle
Tengo un tabla, donde debo hacer una carta por cada línea de la tabla. He logrado hacer pero solo se me copia los datos de la primera línea.
Lo que tengo es:
Dim x As Integer
' Establecer numrows = número de filas de datos.
NumRows = Range("A9", Range("A9").End(xlDown)).Rows.Count
' Seleccionar celda a1.
Range("A9").Select
' Establecer valor "For" para que vaya de bucle el bucle durante "numrows" veces.
For x = 1 To NumRows
ActiveCell.Offset(1, 0).Select
Range("B9").Select
Selection.Copy
Sheets("CSC - 1").Select
Range("J3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Almacen").Select
Range("B3").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("CSC - 1").Select
Range("E35").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Almacen").Select
Range("B5").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("CSC - 1").Select
Range("J35").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Almacen").Select
Range("F9").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("CSC - 1").Select
Range("C28").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Almacen").Select
Range("G9").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("CSC - 1").Select
Range("C26").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Almacen").Select
Range("H9").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("CSC - 1").Select
Range("C30").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Almacen").Select
Range("I9").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("CSC - 1").Select
Range("C14").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
'IMPRIMIR
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
' Selecciona la celda 1 fila por debajo de la celda activa.
ActiveCell.Offset(1, 0).Select
Next
End Sub
Lo que necesito es que se repita el proceso, pero copiando los datos de la línea 10... 11... 12... 13 hasta que no haya datos en la columna A.
¿Es posible?
Para elaborar una carta, mediante Word, Excel y combinar correspondencia, es más que suficiente. Mediante una tabla elaborada en excel, señalas los datos que tendrán que establecer de cada destinatario, el machote de la carta y word, combinas y listos, mil y un cartas en un momento. - Dantte Black