VBA语法查找列中最后一个被占用的单元格



如何实现此功能?我正试图让代码识别C列中最后一个使用的单元格并转到它。我在最后一部分选择rng1 中的单元格时遇到了问题

Sub jupiter3()
Dim ws As Worksheet
Dim rng1 As Range
Set ws = Sheets("Belmont")
Set rng1 = ws.Columns("c").Find("*", ws.[c1], xlValues, , xlByRows, xlPrevious)
If Not rng1 Is Nothing Then
    MsgBox "last cell is " & rng1.Address(0, 0)
Else
    MsgBox ws.Name & " columns A:B are empty", vbCritical
End If
Range("rng1.address(0, 0)").Select

结束子

对我来说,最简单的方法是使用这一行代码

Sheets("Belmont").Range("C" & Sheets("Belmont").Range("C" & Rows.Count).End(xlUp).Row).Select

但如果你想修改你的

Sub jupiter3()
    Dim ws As Worksheet
    Dim rng1 As Range
    Set ws = Sheets("Belmont")
    Set rng1 = ws.Columns("c").Find("*", ws.[c1], xlValues, , xlByRows, xlPrevious)
    If Not rng1 Is Nothing Then
        MsgBox "last cell is " & rng1.Address(0, 0)
        rng1.Select
    Else
        MsgBox ws.Name & " columns A:B are empty", vbCritical
    End If
End Sub

Range("rng1.address(0, 0)").Select更改为rng1.SelectRange(rng1.address).Select

rng1变量被定义为一个范围,该范围由语言以不适合range()的方式进行解释。select您想要定义一个字符串变量,并这样做。替换范围("rng.address(0,0)")。用选择

Dim zen as String
zen=rng.address(0,0)
range(zen).select

相关内容

最新更新