excel根据匹配值获取行范围或实际值
我的excel表格中有以下结构excel根据匹配值获取行范围或实际值,excel,excel-formula,Excel,Excel Formula,我的excel表格中有以下结构 A B --------- ----- 1 | category1 test1 2 | category1 test2 3 | category1 test3 4 | category2 test4 5 | category2 test5 6 | category3 test6 7 | category3 test7 8 | category3
A B
--------- -----
1 | category1 test1
2 | category1 test2
3 | category1 test3
4 | category2 test4
5 | category2 test5
6 | category3 test6
7 | category3 test7
8 | category3 test8
9 | category3 test9
10 | category4 test10
您能否建议使用EXCEL函数(非VBA)返回范围或实际值的方法,以类别文本作为输入
例如,给定category2
我需要返回类似B4:B5
或的“test4”/“test5”
我需要一种动态执行此操作的方法,也就是说,如果我进行插入并向类别添加新值,我需要一个仍能工作的函数,例如
A B
--------- -----
4 | category2 test4
5 | category2 test5
6 | category2 test200
7 | category2 test203
现在给定
category2
我将返回B4:B7
假设类别总是连续的,您可以获得参考:
=OFFSET($A$1,MATCH("category2",$A:$A,0)-1,1,COUNTIF($A:$A,"category2"))
如果您的类别总是以相同的前缀开头,则可以使用以下内容:
=ADDRESS(MATCH("category"&$C$1,B:B,0),2,4,1)&":"&ADDRESS(MATCH("category"&($C$1+1),B:B,0)-1,2,4,1)
所以如果你在C1中加上“2”,它将返回“B4:B5”
这还假设类别是以递增的值命名的,因此如果没有类别3,这将不起作用。类别是否总是连续的?@Taosique hmmm是的类别名称是连续分组的我得到了#值!它是这样工作的,还是应该用作另一个函数的输入?是的,您可以将它与索引(偏移量(…)一起使用。
是1,2,3。。。i、 e.找到的行数。如果没有找到匹配的行,它将返回#N/A代码>。