在VBA Excel宏中, 我从另一张纸复制行,选择另一张纸,并尝试在粘贴之前查找下一个打开的单元格。
Range("A1").End(xlDown).Offset(1, 0).Select
Selection.PasteSpecial Paste:=xlPasteValues
页面具有第一列标题,然后查找,然后将其传递到最后一行?
如果是伪数据
放在第二行,或者如果已经有数据,
有效。
为什么这样做?
答案 0 :(得分:2)
Range.End(xlDown)
等效于按 Ctrl + ↓。
自行测试-如果第1行中只有标题,则将跳至Worksheet
中的最后一行。如果标题下方有数据,则将移至该行。
使用Range.End(xlUp)
通过从Worksheet
的最后一行上移 up 来查找下一个可用行-像这样:
With Sheet1
.Cells(.Rows.Count, 1).End(xlUp).Offset(1).PasteSpecial xlPasteValues
End With
答案 1 :(得分:0)
根据您的数据布局,您可以使用:
Cells(WorksheetFunction.CountA(Columns(1)) + 1, 1).PasteSpecial Paste:=xlPasteValues
或者,使用显式工作表引用(推荐):
With Worksheets("mySheetName")
.Cells(WorksheetFunction.CountA(.Columns(1)) + 1, 1).PasteSpecial Paste:=xlPasteValues
End With