Excel VBA:查找包含重复项的列的最后一行,但不查找整个列的结尾
我有一个大的数据表,其中每一行都有一列,为它提供一个唯一的标识符,如下所示: Row Identifier Value 1 A 3 2 A 4 3 A 7 4 B 1 5 B 3 6 B 0 7 C 9 行标识符值 1 A 3 2 A 4 3 A 7 4 B 1 5 B 3 6B0 7 C 9 我希望能够在一个范围内找到最后一个重复标识符的行号。例如,如果标识符“B”是未知的行数,我想找到最后一行中具有列标识符“B”的行数,我该怎么做 到目前为止,我已经找到了选择第一个标识符行的代码:Excel VBA:查找包含重复项的列的最后一行,但不查找整个列的结尾,vba,Vba,我有一个大的数据表,其中每一行都有一列,为它提供一个唯一的标识符,如下所示: Row Identifier Value 1 A 3 2 A 4 3 A 7 4 B 1 5 B 3
' Select first row where first instance of <B> exists:
With ActiveWorkbook.ActiveSheet
Set First_B_Row = .Range("A:A").Find(What:="B", LookIn:=xlValues)
End With
Dim First_B_RowNumber As Long
First_B_RowNumber = First_B_Row.Row
ActiveWorkbook.ActiveSheet.Rows(First_B_RowNumber).Select
”选择存在第一个实例的第一行:
使用ActiveWorkbook.ActiveSheet
设置第一行=.Range(“A:A”).Find(What:=“B”,LookIn:=xlValues)
以
调暗第一行的行数,长度为
First_B_RowNumber=First_B_Row.Row
ActiveWorkbook.ActiveSheet.Rows(第一行)。选择
但是,我希望能够在一列中找到最后一个标识符的行号。有什么想法吗?你已经非常接近了。而不是从上到下搜索,然后像这样反向搜索:
With ActiveWorkbook.ActiveSheet
Dim Last_B_RowNumber As Long
Last_B_RowNumber = .Range("A:A").Find(What:="B", After:=[A1], _
SearchDirection:=xlPrevious).Row
End With
上述代码将在A列中找到最后一次出现的B,并将其行号分配给一个变量。你只是错过了SearchDirection的论点