Excel 使用列号的列的最后一行

Excel 使用列号的列的最后一行,excel,vba,userform,Excel,Vba,Userform,这应该很容易,但我看不出来 我有几个列,每个团队一列(范围shL.range(S2:AA2))。每个团队下面都有一系列值,这些值应在Userform列表框中可用,具体取决于所选的团队 我有一个代码,它报告了团队的列号,我试图根据该列查找最后一行号。这导致运行时错误1004(对象“\u工作表”的方法“Range”失败),我认为这是由shL.Range(单元格()引起的,但我不知道如何修复它 是否有更好的方法查找列的最后一行 Dim y As Long, c As Long Dim shE As W

这应该很容易,但我看不出来

我有几个列,每个团队一列(范围
shL.range(S2:AA2)
)。每个团队下面都有一系列值,这些值应在Userform列表框中可用,具体取决于所选的团队

我有一个代码,它报告了团队的列号,我试图根据该列查找最后一行号。这导致运行时错误1004(对象“\u工作表”的方法“Range”失败),我认为这是由
shL.Range(单元格(
)引起的,但我不知道如何修复它

是否有更好的方法查找列的最后一行

Dim y As Long, c As Long
Dim shE As Worksheet, shL As Worksheet, FoundTeam As Range
Set shE = Sheets("EnteredData")
Set shL = Sheets("Lookups")

Set FoundTeam = shL.Range("S2:AA2").Find(what:=shE.Range("D3"))
    c = FoundTeam.Column
    y = shL.Range(Cells(3, c) & Rows.Count).End(xlUp).Row

我非常感谢您在这个问题上提供的任何帮助。谢谢

我不确定您想用连接做什么,但请尝试:

y = shL.Cells(shL.Rows.Count, c).End(xlUp).Row

太棒了。这似乎完成了我想要的。谢谢你,欢迎@Marc。另一个小评论。你可能还想添加一个
,如果没有找到Team is Nothing,那么
就像构造一样,只是为了在使用这个变量之前安全。如果它回答了你的问题,请随意单击它右侧的复选标记以接受answer就其本身而言。