检查值范围是否包含值列表

时间:2017-05-30 05:54:31

标签: excel vba

我有一个包含21个数字的列表,它们分为三组。

Numbers    Result
1.  22      25
2.  28
3.  25
4.  24
5.  23
6.  27
7.  26
-----------
8.  28      25
9.  24
10. 27
11. 26
12. 23
13. 22
14. 25
-----------
15. 12      9
16. 9
17. 8
18. 11
19. 10
20. 6
21. 7

我目前正在尝试检查这3组数字是否包含以下任一数字:1,9,17,25。我将4个数字存储在同一工作表的X列中。不会出现两个数字出现在同一组中的情况。如何进行检查结果如上所示?解决方案需要在VBA中。我需要做3次检查,因为我有3个不同的组。这三组数字列在一列中。

1 个答案:

答案 0 :(得分:0)

此公式假设问题需要工作表公式函数。 (见评论)

假设您的号码列表从B2开始,您的查询值在G1:G4:

您可以使用以下数组公式(使用 ctrl + shift + 输入输入):

=INDEX(B2:B8,MAX(IFERROR(MATCH($G$1:$G$4,B2:B8,0),0)))

假设你有" --------"在每个组之后,您可以在上面的公式下面的单元格中复制以下数组公式。这使您可以快速向下拖动。

=IF(B9="--------",INDEX(B10:B16,MAX(IFERROR(MATCH($G$1:$G$4,B10:B16,0),0))),"")