请帮助我使用宏来将文本从输入表(工作表1)复制并粘贴到同一个Excel文件中的报表表(工作表2) .
输入表格式:
名称 - 单元格J5
日期单元格J6
启动时间单元格J7
结束时间单元格J8
停机时间J9
我需要一个宏来复制J5:J9并使用转置功能将其粘贴到A2:E2中 . 此外,工作表与多个用户共享,因此需要将其粘贴到“报告”表(工作表2)中的最后一个可用行中 .
目前,我使用以下宏代码:
Sub Report()
Sheets("Input").Select
Range("J5:J9").Select
Selection.Copy
Sheets("Reports").Select
Range("A1").Select
Selection.End(xlDown).Select
ActiveCell.Offset(1, 0).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=True
Range("A1").Select
Selection.End(xlDown).Select
ActiveCell.Offset(1, 0).Select
Sheets("Input").Select
ActiveWindow.SmallScroll Down:=-5
Sheets("Input").Select
Range("J5:J9").Select
Selection.ClearContents
End Sub
运行宏时,我在“ActiveCell.Offset(1,0) . 选择”时收到错误 .
请告知代码的任何更改,以帮助我解决问题 .
谢谢
1 回答
你可以用几行重写你正在做的所有事情:
我不确定你为什么会因偏移一行而出错,这对我有用 - 但这可能与你选择“最后一行”的方法有关