VBA宏无法找到最后一个使用ActiveCell的单元格

时间:2017-07-06 14:07:26

标签: excel vba excel-vba

我想通过查找最后一个非空单元格,将一些值从一个(src)工作簿粘贴到我的(dst)工作簿。

在我的情况下,复制粘贴工作正常,直到src工作簿没有条目。

我的宏的结果如下:

Header - |email   |Name  |origin
1.row  - |email3  |Name2 |CH3
2.row  - |email2  |empty |ch2

我的期望是:

Header - email  |Name    |origin
1.row  - email3 |x       |CH3
2.row  - email2 |Name2   |ch2

我的代码块:

Workbooks.Open (Filepath & MyFile)
Range("A2").Copy
ActiveWorkbook.Close savechanges:=False

erow = Sheet1.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row
ActiveSheet.Paste Destination:=Worksheets("AP217").Range(Cells(erow, 1), Cells(erow, 1))

If ActiveCell.Value = "" Then
ActiveCell.Value = "x"
End If

如果有人可以提供建议,那就太棒了。

干杯

1 个答案:

答案 0 :(得分:0)

我会简单地处理错误,如下所示:

erow = Sheet1.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row

On Error Resume Next ' ADD THIS LINE

ActiveSheet.Paste Destination:=Worksheets("AP217").Range(Cells(erow, 1), Cells(erow, 1))

On Error GoTo 0 ' ADD THIS LINE -- this cancels the "Resume next", just in case...