2017-02-18 64 views
0

我似乎无法克服此障碍。多次更正后错误仍然存​​在。发生运行时错误424 @设置语句

Set XlSheet = ActiveWorkbook.ActiveSheet 
XlSheet.Cells(1, 15) = "Date" 

lRow = XlSheet.Cells(XlSheet.Rows.Count, 1).End(xlUp).Row 

Set rng = XlSheet.Range(XlSheet.Cells(2, 15), XlSheet.Cells(lRow, 5)).Select 

感谢

+1

采取'Select'了你的最后一行:Set rng = XlSheet.Range(XlSheet.Cells(2,15),XlSheet.Cells(lRow,5))' – user3598756

+0

我做了,但现在我得到一个运行时错误438 – lamine

+0

什么行是抛出该错误?尝试在我的答案 – user3598756

回答

2

大约为每个循环

ActiveWorkbook.ActiveSheet是因为它没有用,需要的OP最后的评论后编辑的的默认

所以你可以只代码

Cells(1, 15) = "Date" 
lRow = Cells(Rows.count, 1).End(xlUp).row 

Set rng = Range(Cells(2, 15), Cells(lRow, 5)) 

For Each cell In rng 
    cell.Value = Date 
Next cell 

但整个回路可以崩溃到:

rng.Value = Date 

而如果你打算切换不同的工作表,那么你可以代码:

Set XlSheet = ActiveSheet 
With XlSheet 
    .Cells(1, 15) = "Date" 
    lRow = .Cells(.Rows.count, 1).End(xlUp).row 
    Set rng = .Range(.Cells(2, 15), .Cells(lRow, 5)) 
End With 

rng.Value = Date