为了账号安全,请及时绑定邮箱和手机立即绑定

请问下在VBA中Range("a1").End(xltoright).column什么意思啊?

请问下在VBA中Range("a1").End(xltoright).column什么意思啊?

当年话下 2023-02-18 21:13:39
在VBA中Range("a1").End(xlDown).Row和Range("a1").End(xlup).Row什么区别啊
查看完整描述

2 回答

?
哆啦的时光机

TA贡献1779条经验 获得超6个赞

在循环语句内使用的话,很容易出错,因为其值不会变化,
所以要放到循环语句前,取得最后一行的值,
另外,使用Range("a1").End(xlDown).Row如果A列第一行下面全为空,
则得到表的最后一行65536,容易出错,
建议使用Range("a65536").End(xlUp).Row
Sub a()
Dim i As Long
Dim r As Long
r = Range("a1").End(xlDown).Row
For i = 1 To 10
r = r + 1
Cells(r, 1) = i
Next i
End Sub


查看完整回答
反对 回复 2023-02-20
?
莫回无

TA贡献1865条经验 获得超7个赞

如果你在循环语句中使用它,很容易出错,因为值没有改变,

所以要放到循环语句前,取得最后一行的值,

另外,使用Range("a1").End(xlDown).Row如果A列第一行下面全为空,

则得到表的最后一行65536,容易出错,

建议使用Range("a65536").End(xlUp).Row

Suba()

DimiAsLong

DimrAsLong

r=Range("a1").End(xlDown).Row

Fori=1To10

r=r+1

Cells(r,1)=i

Nexti

EndSub

查看完整回答
反对 回复 2023-02-20
  • 2 回答
  • 0 关注
  • 66 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信