【发布时间】:2018-10-18 06:12:20
【问题描述】:
请帮助我使用宏,将文本从输入表(工作表 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).Select”错误。
请告知任何可以帮助我解决问题的代码更改。
谢谢
【问题讨论】:
-
请阅读How to avoid using Select in Excel VBA并关注它。这将解决您的问题。