Macro para copiar en la ultima fila libre
Tengo en una hoja un listado de precios, que en realidad es una macro que hace un listado de todas las hojas del libro. Ahora bien, el listado aparece en la columna B, en las columnas C a J, hay fórmulas asociadas a lo que aparece en la B.
¿Lo qué necesito es una macro que me ubique la ultima fila de la columna C con datos y copie ahí las fórmulas que hay desde C a J. Se entiende?
La macro de esa hoja es:
Dim fill As Long, w As Worksheet, sHoja As String
fill = 2
For Each w In ThisWorkbook.Worksheets
sHoja = w.Name
Cells(fill, 2).FormulaR1C1 = sHoja
ActiveSheet.Hyperlinks.Add Anchor:=Cells(fill, 2), Address:="", _
SubAddress:=sHoja & "!A1", TextToDisplay:=sHoja
fill = fill + 1
Next w
Rows("2:5").Select
Selection.Delete Shift:=xlUp
Selection.Sort Key1:=Range("B2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Columns("B:j").Select
Selection.Sort Key1:=Range("c2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
intente con
Dim SigFila As Long
Application.ScreenUpdating = False
Range("c5:j5").Select
Selection.Copy
ActiveSheet.Select
SigFila = Range("c65536").Select
ActiveCell.End(xlUp).Select
ActiveCell.Offset(1, 0).Select
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveSheet.Select
Application.ScreenUpdating = True
End Sub
Pero no funciona.
¿Lo qué necesito es una macro que me ubique la ultima fila de la columna C con datos y copie ahí las fórmulas que hay desde C a J. Se entiende?
La macro de esa hoja es:
Dim fill As Long, w As Worksheet, sHoja As String
fill = 2
For Each w In ThisWorkbook.Worksheets
sHoja = w.Name
Cells(fill, 2).FormulaR1C1 = sHoja
ActiveSheet.Hyperlinks.Add Anchor:=Cells(fill, 2), Address:="", _
SubAddress:=sHoja & "!A1", TextToDisplay:=sHoja
fill = fill + 1
Next w
Rows("2:5").Select
Selection.Delete Shift:=xlUp
Selection.Sort Key1:=Range("B2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Columns("B:j").Select
Selection.Sort Key1:=Range("c2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
intente con
Dim SigFila As Long
Application.ScreenUpdating = False
Range("c5:j5").Select
Selection.Copy
ActiveSheet.Select
SigFila = Range("c65536").Select
ActiveCell.End(xlUp).Select
ActiveCell.Offset(1, 0).Select
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveSheet.Select
Application.ScreenUpdating = True
End Sub
Pero no funciona.
1 Respuesta
Respuesta de paramisolo
1