我的excel表格如下:
A | B
-----
0 | 2
0 | 3
0 | 4
0 | 5
0 | 6
0 | 7
1 | 8
1 | 9
1 | 10
1 | 11
1 | 12
2 | 13
2 | 14
...
如何在A?
中为每个值的最后一次出现获取B的值输出是 -
C | D
0 | 7
1 | 12
2 | 14
有一种简单的方法吗?谢谢!
答案 0 :(得分:5)
假设你已经在C1中列出了0,1,2等等,那么在D1中复制使用这个公式
=LOOKUP(C1,A:B)
答案 1 :(得分:2)
突出显示整个表格。
在“数据”选项卡上的“大纲”窗格中,单击“小计”按钮。
在At change in ...框中,选择A.
在使用功能框中,选择最大。
在“添加小计”框中,确保B有复选标记
单击“确定”。
使用破折号折叠每个部分。
这将避免任何编程或公式,并保持数据完整。
答案 2 :(得分:0)
要获取A列中的最后一个值,请使用以下公式:
=INDEX(A:A, COUNTA(A:A), 1)
以下内容将获取B列中的最后一个值:
=INDEX(B:B, COUNTA(B:B), 1)
答案 3 :(得分:0)
使用宏的示例:
Sub LastValueInB()
VarA = Range("A1").Value
VarB = Range("B1").Value
Output = ""
For i = 1 To 10
If Range("A" & i).Value = VarA Then
VarB = Range("B" & i).Value
Else
Output = Output + VarA & VarB & vbCrLf
VarA = Range("A" & i).Value
End If
Next i
MsgBox Output
End Sub